Hosch: Alle ID's finden, die Heute schon komplett verwendet wurden

Hallo

Im Grunde muss ich dazu zwei Sachen zu einer zusammen dengeln... nämlich

SELECT `FK_AktivityID`, COUNT(DISTINCT `FK_InfoID`) AS Treffer FROM tbl_aktivity
WHERE DATE(tbl_aktivity.Erstellzeit) = CURDATE() GROUP BY `FK_AktivityID`

Und

SELECT count(PK_InfoID) AS InfoCount FROM tbl_info

wenn ich daraus aber sowas hier mache

SELECT `FK_AktivityID`, COUNT(DISTINCT `FK_InfoID`) AS Treffer FROM tbl_aktivity
WHERE DATE(tbl_aktivity.Erstellzeit) = CURDATE() GROUP BY `FK_AktivityID`
AND (SELECT count(PK_InfoID) FROM tbl_info) = Treffer

gibt das nen fehler #1247 - Reference 'Treffer' not supported (reference to group function)

Ich möchte damit jede FK_AktivityID einmal zurück bekommen, die heute schon mit allen Vorhandenen Infos verknüpft wurde.

  1. Wollte noch was editieren, da der letzte Codeblock nicht ordentlich dargestellt wird, aber das Forum meint dazu "We're sorry, but something went wrong."

    1. Hallo Hosch,

      Wollte noch was editieren, da der letzte Codeblock nicht ordentlich dargestellt wird, aber das Forum meint dazu "We're sorry, but something went wrong."

      Sollte gefixed sein.

      LG,
      CK

  2. Tach!

    SELECT `FK_AktivityID`, COUNT(DISTINCT `FK_InfoID`) AS Treffer FROM tbl_aktivity
    WHERE DATE(tbl_aktivity.Erstellzeit) = CURDATE() GROUP BY `FK_AktivityID`
    AND (SELECT count(PK_InfoID) FROM tbl_info) = Treffer
    

    gibt das nen fehler #1247 - Reference 'Treffer' not supported (reference to group function)

    Die Angaben in der SELECT-Klausel werden erst nach WHERE und GROUP BY berechnet. Du kannst dort noch keinen Bezug auf sie (oder deren Aliase) nehmen. Erst in HAVING oder ORDER BY geht das.

    dedlfix.