Je crée un système de réservation de réservation et je suis en train d'écrire une requête qui montre quelles ressources sont libres à un moment donné (permet aux utilisateurs de choisir les stations réservation)Réservations requête SQL
J'ai deux tables dans ma base de données
table Première
|workstationid | location|
+--------------+---------+
| 1 |Downsview|
| 2 |Downsview|
| 3 |Downsview|
| 4 |Downsview|
| 5 |Downsview|
table Deuxième
|wsid |location |email |duration |startDate |endDate |
+-----+------------+------------+---------+----------+--------+
| 1 | Downsview | randomemail| 5 | 9/4/2017 |9/8/2017|
La requête J'exécute est
SELECT r.wsid,r.location FROM test_revision2 r WHERE r.location='Downsview' AND not exists(select 1 from test_bookings2 b WHERE r.wsid = b.wsid AND r.location = b.location AND b.startDate > '9/5/2017'AND b.endDate <'9/5/2017')
Cependant, le problème de la requête est qu'il retourne tous les 5 endroits aussi disponibles mais comme vous pouvez le voir dans mon deuxième table il y a une réservation de Sept4th -sept 8 pour poste de travail 1.
OU SUGGESTIONS AIDE SERAIT apprécié
workstationid location
1 Downsview
2 Downsview
3 Downsview
4 Downsview
5 Downsview
PSA: [format de date ISO] (https://xkcd.com/1179/). – HABO
Quel est le résultat attendu pour la date '9/5/2017'? workstationids 2,3,4,5? –
Oui, c'est correct @OtoShavadze – rahulchawla