Ich versuche ein wenig tiefer in MYSQL einzusteigen, dabei bin ich auf folgendes Problem gestoßen:
Aufgabe: Zeige alle Zimmer die heute am 22.03.2017 NICHT belegt sind.
Mit einer Unterabfrage bekomme ich das hin:
Ergebnis
Mit meinem Join (ich hab verschiedenste Varianten versucht ) bekomme ich keine Datensätze zurück:
Bedanke mich für Aufklärung
Seballa
Code:
'zimmer' 'res' +---+-------+ +--+---------------------+---+ |zid|name | |id|anreise |abreise |zid| +---+-------+ +--+----------+----------+---+ | 1 |zimmer1| | 1|2017-03-22|2017-03-24| 1 | | 2 |zimmer2| | 2|2017-03-24|2017-03-25| 2 | +--+--------+ +--+----------+----------+---+
Mit einer Unterabfrage bekomme ich das hin:
PHP-Code:
Select * From zimmer
Where NOT EXISTS (
SELECT res.* FROM res
WHERE(( anreise <= CURDATE()) AND ( abreise > CURDATE()))
AND zimmer.zid = res.zid
)
Code:
'zimmer' +---+-------+ |zid|name | +---+-------+ | 2 |zimmer2| +--+--------+
PHP-Code:
SELECT t1.* FROM zimmer t1
LEFT JOIN res t2 USING(zid)
WHERE t2.zid IS NULL
AND (( t2.anreise <= CURDATE()) AND ( t2.abreise > CURDATE()))
Seballa
Kommentar