[MySQL 5] Récupérer les dossiers des dates communes

  • cancer10
  • Proficient
  • Proficient
  • No Avatar
  • Inscription: Juin 29, 2006
  • Messages: 268
  • Status: Offline

Message Décembre 15th, 2010, 10:52 am

Salut peps,

J'ai une question sur un système de réserver des hôtels chambre.

S'il vous plaît jeter un oeil dans la table de la salle.

Image

Le texte suivant est le tableau de commande:

Image




Quelle requête serait me chercher la date (s) qui a toutes les chambres (8 dans ce cas) réservé à cette date?

Pour ce cas, il serait 2010-12-10 et 2010-12-20 , Puisque tous les 8 chambres ont été réservées pour la date.

Image




S'il vous plaît si quelqu'un peut aider?

Merci d'avance :)
Interview Questions & Answers - http://www.focusinterview.com
My Profile: http://outlineme.com/cancer10
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Décembre 15th, 2010, 10:52 am

  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Inscription: Fév 10, 2004
  • Messages: 13455
  • Loc: Florida
  • Status: Offline

Message Décembre 15th, 2010, 8:37 pm

Si une pièce ne peut pas être réservé plus d'une fois dans la même journée, quelque chose comme ça devrait fonctionner.

SQL Code: [ Select ]
SELECT date_booked, COUNT(room_id) AS rooms_booked
FROM bookings
WHERE rooms_booked = 8
GROUP BY date_booked;
  1. SELECT date_booked, COUNT(room_id) AS rooms_booked
  2. FROM bookings
  3. WHERE rooms_booked = 8
  4. GROUP BY date_booked;
Strong with this one, the sudo is.
  • cancer10
  • Proficient
  • Proficient
  • No Avatar
  • Inscription: Juin 29, 2006
  • Messages: 268
  • Status: Offline

Message Décembre 15th, 2010, 8:54 pm

Salut

Merci pour votre réponse.

Comme le nombre de chambres peut varier, peut être 10,20,30 etc, donc ai-je besoin de tirer une requête différente et de découvrir le nombre et le stocker dans une variable puis d'exécuter votre requête?

Comme ça?
[CODE] & #46; & #46; où rooms_booked = $ count [/ CODE]
Interview Questions & Answers - http://www.focusinterview.com
My Profile: http://outlineme.com/cancer10
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Inscription: Fév 10, 2004
  • Messages: 13455
  • Loc: Florida
  • Status: Offline

Message Décembre 15th, 2010, 11:38 pm

Sons à peu près juste. Vous pourrez sans doute utiliser une sous-requête pour obtenir le nombre plus grande salle, mais beaucoup de theres une manière qui peut se briser si les chambres ont été enlevés ou quelque chose.

SQL Code: [ Select ]
SELECT date_booked, COUNT(room_id) AS rooms_booked
FROM bookings
WHERE rooms_booked = (SELECT room_id FROM rooms ORDER BY room_id DESC LIMIT 1)
GROUP BY date_booked;
  1. SELECT date_booked, COUNT(room_id) AS rooms_booked
  2. FROM bookings
  3. WHERE rooms_booked = (SELECT room_id FROM rooms ORDER BY room_id DESC LIMIT 1)
  4. GROUP BY date_booked;


Les chances sont vous allez déjà avoir qui comptent disponibles dans un autre endroit, de sorte que le "= $ count" vous avez probablement va faire plus de sens.
Strong with this one, the sudo is.
  • cancer10
  • Proficient
  • Proficient
  • No Avatar
  • Inscription: Juin 29, 2006
  • Messages: 268
  • Status: Offline

Message Décembre 15th, 2010, 11:43 pm

Merci homme
Interview Questions & Answers - http://www.focusinterview.com
My Profile: http://outlineme.com/cancer10
  • SpooF
  • ٩๏̯͡๏۶
  • Bronze Member
  • Avatar de l’utilisateur
  • Inscription: Mai 22, 2004
  • Messages: 3415
  • Loc: Richland, WA
  • Status: Offline

Message Décembre 16th, 2010, 8:01 am

joebert a écrit:
Sons à peu près juste. Vous pourrez sans doute utiliser une sous-requête pour obtenir le nombre plus grande salle, mais beaucoup de theres une manière qui peut se briser si les chambres ont été enlevés ou quelque chose.

SQL Code: [ Select ]
SELECT date_booked, COUNT(room_id) AS rooms_booked
FROM bookings
WHERE rooms_booked = (SELECT room_id FROM rooms ORDER BY room_id DESC LIMIT 1)
GROUP BY date_booked;
  1. SELECT date_booked, COUNT(room_id) AS rooms_booked
  2. FROM bookings
  3. WHERE rooms_booked = (SELECT room_id FROM rooms ORDER BY room_id DESC LIMIT 1)
  4. GROUP BY date_booked;


Les chances sont vous allez déjà avoir qui comptent disponibles dans un autre endroit, de sorte que le "= $ count" vous avez probablement va faire plus de sens.


Vous devriez être en mesure de simplement compter le nombre total de chambres.

SQL Code: [ Select ]
SELECT date_booked, COUNT(room_id) AS rooms_booked
FROM bookings
WHERE rooms_booked = (SELECT COUNT(*) FROM rooms)
GROUP BY date_booked;
  1. SELECT date_booked, COUNT(room_id) AS rooms_booked
  2. FROM bookings
  3. WHERE rooms_booked = (SELECT COUNT(*) FROM rooms)
  4. GROUP BY date_booked;
#define NULL (::rand() % 2)
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Inscription: Fév 10, 2004
  • Messages: 13455
  • Loc: Florida
  • Status: Offline

Message Décembre 22nd, 2010, 9:53 pm

Il y avait une raison pour laquelle j'ai décidé de ne pas le faire plus tôt, frauduleux, mais je ne me souviens plus ce qu'il était pour le moment. :scratchhead:
Strong with this one, the sudo is.

Afficher de l'information

  • Total des messages de ce sujet: 7 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 239 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC