Einzelnen Beitrag anzeigen

Benutzerbild von joachimd
joachimd

Registriert seit: 17. Feb 2005
Ort: Weitingen
679 Beiträge
 
Delphi 12 Athens
 
#11

AW: Datensatz immer ausgeben

  Alt 2. Dez 2010, 10:34
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
liefert in meiner Testumgebung auch nur 2 Restaurants, nicht alle drei
PS: Das ist meine Test-Datenbank (in ADS):
SQL-Code:
create table restaurants(id integer, name cichar(30));
create table gerichte(id integer, restaurant_id integer, name cichar(30));
create table bestellungen(id integer,gericht_id integer, datum date);

insert into restaurants values(1,'Löwen');
insert into restaurants values(2,'Ochsen');
insert into restaurants values(3,'Sonne');

insert into gerichte values(1,1,'Braten');
insert into gerichte values(2,1,'Schnitzel');
insert into gerichte values(3,2,'Eintopf');
insert into gerichte values(4,2,'Suvlaki');
insert into gerichte values(5,3,'Pommes');
insert into gerichte values(6,3,'Currywurst');

insert into bestellungen values(1,1,curdate());
insert into bestellungen values(2,2,curdate());
insert into bestellungen values(3,3,curdate());
Joachim Dürr
Joachim Dürr Softwareengineering
http://www.jd-engineering.de
  Mit Zitat antworten Zitat