Question, requête, procédure ou fonction SQL
P粉253518620
P粉253518620 2024-04-03 10:14:31
0
1
336

Voici la description.

Il existe un tableau qui répertorie les intervalles de temps nécessaires pour effectuer une tâche spécifique :

id Démarrer Complet
1 07:00:00 11:00:00
2 12:30:00 17:00:00
3 11:30:00 14:00:00
4 09:30:00 11:30:00
5 10:00:00 15:00:00
6 09:00:00 13:30:00
7 07:00:00 11:30:00

Ces tâches ne peuvent pas être accomplies en même temps. J'ai besoin de connaître le nombre minimum de jours requis pour accomplir toutes les tâches.

Dans ce tableau, je peux passer au moins 5 jours pour terminer la tâche.

day 1 => task 1 and task 2
day 2 => task 4 and task 3
day 3 => task 5
day 4 => task 6
day 5 => task 7

Le résultat devrait donc être 5. J'espère que c'est clair, merci d'avance !

P粉253518620
P粉253518620

répondre à tous(1)
P粉195200437
SELECT COUNT(*)
FROM test t1
JOIN test t2 ON 
-- these 2 conditions checks for overlapping
                t1.start 

Vous devez simplement calculer le nombre maximum de tâches simultanées. Il suffit de vérifier l'heure de début de chaque tâche.

https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=ee3034a307c32212db365ba06f654f9f 一个>

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal