ok, habs nachgebaut. Was Du brauchst, ist ein outer join Deines Ergebnisses mit der restaurants-Tabelle:
SQL-Code:
SELECT a.*, b.Anzahl FROM
restaurants a
LEFT OUTER JOIN
(
SELECT DISTINCT COUNT(gerichte.restaurant_id) AS Anzahl, restaurants.id AS Id
FROM restaurants,bestellungen,gerichte
WHERE bestellungen.gericht_id = gerichte.id
AND gerichte.restaurant_id = restaurants.id
AND bestellungen.datum = CURRENT_DATE
GROUP BY restaurants.id
) b
on a.id=b.id
So müsste das doch auch gehen:
SQL-Code:
SELECT DISTINCT COUNT(gerichte.restaurant_id) AS Anzahl, restaurants.id AS Id
FROM restaurants,bestellungen,gerichte
WHERE bestellungen.gericht_id = gerichte.id
AND gerichte.restaurant_id = restaurants.id
AND (bestellungen.datum = CURRENT_DATE OR bestellungen.datum is null)
GROUP BY restaurants.id
Eventuell den count noch anpassen
Gruß
günter