Nous allons expliquer comment calculer les jours ouvrables en tenant compte des jours fériés avec SQL. Dans la gestion des calendriers d’affaires et l’analyse de données, il est important de connaître avec précision les jours ouvrables. Cet article explique, à partir de la définition de base des jours ouvrables, comment intégrer les données des jours fériés et comment créer des requêtes SQL pour calculer les jours ouvrables avec des exemples concrets. Enfin, en tant qu’exemple d’application utile pour les pratiques professionnelles, nous présentons également des méthodes pour calculer le nombre de jours ouvrables pendant une période donnée ou le prochain jour ouvrable.
Définition des jours ouvrables et points à considérer
Les jours ouvrables désignent les jours où les activités commerciales habituelles ont lieu, à l’exclusion des week-ends et des jours fériés. En suivant le calendrier d’affaires et en tenant compte des jours fériés, il est possible de calculer avec précision les jours ouvrables. En particulier, pour les échéances de projet ou l’organisation des plannings de livraison, il est crucial de connaître avec précision les jours ouvrables. Ensuite, nous expliquerons comment préparer les données des jours fériés nécessaires pour calculer les jours ouvrables.
Préparation des données de jours fériés
Pour intégrer les données de jours fériés dans une base de données SQL, commencez par créer une liste de jours fériés, puis enregistrez-la en tant que table dans la base de données. Voici les étapes à suivre :
Collecte des données de jours fériés
Recherchez les jours fériés de chaque pays ou région et créez une liste dans le format suivant :
2024-01-01, New Year's Day
2024-04-29, Showa Day
...
Création de la table des jours fériés
Créez une table pour stocker les données des jours fériés. Voici un exemple de requête SQL :
CREATE TABLE holidays (
holiday_date DATE PRIMARY KEY,
holiday_name VARCHAR(255)
);
Insertion des données de jours fériés
Insérez les données des jours fériés collectées dans la table. Voici un exemple de requête SQL :
INSERT INTO holidays (holiday_date, holiday_name) VALUES
('2024-01-01', 'New Year's Day'),
('2024-04-29', 'Showa Day'),
...
Les données des jours fériés sont maintenant prêtes. Ensuite, nous allons expliquer comment calculer les jours ouvrables en utilisant ces données.
Requêtes SQL pour le calcul des jours ouvrables
Pour calculer les jours ouvrables en tenant compte des jours fériés, créez des requêtes SQL en suivant les étapes ci-dessous :
Requête de base pour déterminer les jours ouvrables
D’abord, créez une requête pour déterminer si une date spécifique est un jour ouvrable. Définissez des conditions pour exclure les week-ends (samedi et dimanche) et les jours fériés.
SELECT
date,
CASE
WHEN DAYOFWEEK(date) IN (1, 7) THEN 'weekend'
WHEN date IN (SELECT holiday_date FROM holidays) THEN 'jour férié'
ELSE 'jour ouvrable'
END AS day_type
FROM
your_date_table;
Requête pour calculer le nombre de jours ouvrables
Ensuite, créez une requête pour calculer le nombre de jours ouvrables dans une période donnée. Ici, spécifiez une date de début et une date de fin, puis comptez le nombre de jours ouvrables dans cette période.
SELECT
COUNT(*) AS business_days
FROM
(SELECT
date
FROM
your_date_table
WHERE
date BETWEEN '2024-01-01' AND '2024-12-31'
AND DAYOFWEEK(date) NOT IN (1, 7)
AND date NOT IN (SELECT holiday_date FROM holidays)
) AS subquery;
Requête pour calculer le prochain jour ouvrable
Créez une requête pour calculer le prochain jour ouvrable à partir d’une date donnée.
SELECT
MIN(date) AS next_business_day
FROM
your_date_table
WHERE
date > '2024-05-24'
AND DAYOFWEEK(date) NOT IN (1, 7)
AND date NOT IN (SELECT holiday_date FROM holidays);
Vous pouvez maintenant calculer les jours ouvrables en tenant compte des jours fériés. Ensuite, nous présenterons comment adapter ces requêtes à des scénarios spécifiques.
Exemple d’application : calculer le nombre de jours ouvrables pour une période donnée
En calculant le nombre de jours ouvrables sur une période spécifique, vous pouvez planifier précisément les calendriers de projet ou les plans de travail. Voici un exemple concret de requête :
Exemple de requête : calculer le nombre de jours ouvrables pour un mois donné
Par exemple, créez une requête pour calculer le nombre de jours ouvrables pour le mois de mai 2024.
SELECT
COUNT(*) AS business_days
FROM
(SELECT
date
FROM
your_date_table
WHERE
date BETWEEN '2024-05-01' AND '2024-05-31'
AND DAYOFWEEK(date) NOT IN (1, 7)
AND date NOT IN (SELECT holiday_date FROM holidays)
) AS subquery;
Exemple de requête : calculer le nombre de jours ouvrables pour une semaine donnée
Par exemple, créez une requête pour calculer le nombre de jours ouvrables pour la première semaine de mai 2024 (du 1er au 7 mai).
SELECT
COUNT(*) AS business_days
FROM
(SELECT
date
FROM
your_date_table
WHERE
date BETWEEN '2024-05-01' AND '2024-05-07'
AND DAYOFWEEK(date) NOT IN (1, 7)
AND date NOT IN (SELECT holiday_date FROM holidays)
) AS subquery;
Explication de la requête
Cette requête sélectionne les dates dans la période spécifiée, en excluant les week-ends (samedi et dimanche) ainsi que les jours fériés, et compte le nombre de jours ouvrables. Cela vous permet d’obtenir le nombre exact de jours ouvrables sur une période donnée.
De cette manière, vous pouvez facilement calculer le nombre de jours ouvrables pour une période spécifique en utilisant des requêtes SQL. Ensuite, nous allons montrer comment calculer le prochain jour ouvrable à partir de la date actuelle.
Exemple d’application : calculer le prochain jour ouvrable
Calculer le prochain jour ouvrable à partir de la date actuelle peut être utile pour vérifier les délais de livraison ou pour la planification des tâches. Voici une requête SQL pour trouver le prochain jour ouvrable :
Requête pour calculer le prochain jour ouvrable
Par exemple, supposons que la date actuelle soit le 24 mai 2024, créez une requête pour calculer le prochain jour ouvrable.
SELECT
MIN(date) AS next_business_day
FROM
your_date_table
WHERE
date > '2024-05-24'
AND DAYOFWEEK(date) NOT IN (1, 7)
AND date NOT IN (SELECT holiday_date FROM holidays);
Explication de la requête
-
MIN(date) AS next_business_day
:
-
- Récupère la date la plus proche répondant aux critères, c’est-à-dire le prochain jour ouvrable.
-
WHERE date > '2024-05-24'
:
-
- Considère les dates postérieures à la date actuelle.
-
AND DAYOFWEEK(date) NOT IN (1, 7)
:
-
- Exclut les dimanches (1) et samedis (7).
-
AND date NOT IN (SELECT holiday_date FROM holidays)
:
-
- Exclut les jours fériés.
Exemple pratique : calcul du prochain jour ouvrable
Par exemple, si le 24 mai 2024 est un vendredi et que le lundi suivant, le 27 mai 2024, n’est pas un jour férié, cette requête renverra le 27 mai 2024 comme prochain jour ouvrable.
En utilisant cette requête, vous pouvez planifier efficacement les calendriers de travail dans vos processus d’affaires. Ceci conclut notre explication sur la méthode de calcul des jours ouvrables en tenant compte des jours fériés. Passons maintenant à la conclusion de l’article.
Conclusion
Nous avons expliqué comment calculer les jours ouvrables en tenant compte des jours fériés avec SQL. En commençant par la définition des jours ouvrables, nous avons décrit comment préparer les données des jours fériés, comment créer des requêtes SQL spécifiques, et en tant qu’exemples d’application, comment calculer le nombre de jours ouvrables pendant une période donnée ou déterminer le prochain jour ouvrable. En utilisant ces méthodes, vous pouvez améliorer la précision de la gestion des calendriers d’affaires et de l’analyse des données. En intégrant correctement les jours fériés, vous obtenez des données plus réalistes et pratiques. N’hésitez pas à les utiliser dans vos pratiques professionnelles.