sql >> Databáze >  >> RDS >> Mysql

Zahrňte komplexní logiku do jediného dotazu MySQL

Použijte vlastní připojení:

SELECT r1.HOTEL_ID, r1.MAX_ADULTS, r1.NO_OF_ROOMS,
    r2.MAX_ADULTS, r2.NO_OF_ROOMS,
    r3.MAX_ADULTS, r3.NO_OF_ROOMS,
FROM rooms AS r1
INNER JOIN rooms AS r2 ON r1.HOTEL_ID=r2.HOTEL_ID
INNER JOIN rooms AS r3 ON r1.HOTEL_ID=r3.HOTEL_ID
WHERE r1.MAX_ADULTS=1
AND r2.MAX_ADULTS=2
AND r3.MAX_ADULTS=3

Pro kontrolu zadání počtu místností budete muset přidat klauzule podmínky.

Vygenerované id_výsledku bude r1.HOTEL_ID .

Získali byste jeden řádek na hotel.




  1. Úplné ignorování časových pásem v Rails a PostgreSQL

  2. Průvodce návrhem databáze pro Správce úloh v MySQL

  3. Chci zkopírovat tabulku obsaženou z jedné databáze a vložit do jiné databázové tabulky

  4. mysql vyberte pomocí smyčky while