Probmème requête sur 3 tables
marcuzzz
-
marcuzzz -
marcuzzz -
Bonjour,
Bonjour,
Voila j'ai un petit problème, pour une requête par rapport à un système de réservation d'une table de restaurant.Je voudrais avoir les tables libres à une certaine date donnée.Cette requête porte sur 3 tables.(relation n-m)
les tables sont:
Table:
id_table
nombre de couvert
Réservation:
id_réservation
date_réservation
Table_Réservation:
id_table_réservation
id_table
id_réservation
Donc il me faut toutes les Table.id_table qui ne sont pas réservé à une date choisie par l'utilisateur...
Merci d'avance pour votre aide.
Bonjour,
Voila j'ai un petit problème, pour une requête par rapport à un système de réservation d'une table de restaurant.Je voudrais avoir les tables libres à une certaine date donnée.Cette requête porte sur 3 tables.(relation n-m)
les tables sont:
Table:
id_table
nombre de couvert
Réservation:
id_réservation
date_réservation
Table_Réservation:
id_table_réservation
id_table
id_réservation
Donc il me faut toutes les Table.id_table qui ne sont pas réservé à une date choisie par l'utilisateur...
Merci d'avance pour votre aide.
A voir également:
- Probmème requête sur 3 tables
- Ai suite 3 - Télécharger - Optimisation
- Tables des matières word - Guide
- Picasa 3 - Télécharger - Albums photo
- Photorecit 3 - Télécharger - Visionnage & Diaporama
- Imagen 3 - Accueil - Applications & Logiciels
2 réponses
Bonjour,
Select a.id_table, a.nombredecouvert from table a
where a.id_table not in(
select b.id_table from table_reservation b
where b.id_reservation = reservation.id_reservation
and reservation.date_reservation = "datechoisie")
Remarque = la syntaxe pour intégrer la date dans le code sql peut varier en fonction du SGBDR.
Mais à part ça, je pense que c'est une solution.
A+
Select a.id_table, a.nombredecouvert from table a
where a.id_table not in(
select b.id_table from table_reservation b
where b.id_reservation = reservation.id_reservation
and reservation.date_reservation = "datechoisie")
Remarque = la syntaxe pour intégrer la date dans le code sql peut varier en fonction du SGBDR.
Mais à part ça, je pense que c'est une solution.
A+
merci de ta réponse qui fonctionne parfaitement...:) j'ai juste rajouté la table réservation dans le deuxième select qui tu avais oublié mais merci
Select tables.id_table from tables where tables.id_table not in(select table_reservation.id_table from table_reservation, reservation where table_reservation.id_reservation = reservation.id_reservation and reservation.date = '".$mydate."') ";
Select tables.id_table from tables where tables.id_table not in(select table_reservation.id_table from table_reservation, reservation where table_reservation.id_reservation = reservation.id_reservation and reservation.date = '".$mydate."') ";