Heim > Fragen und Antworten > Hauptteil
Ich versuche, eine MySQL-Abfrage zu erstellen, um die Tabelle anzuzeigen, in der Suchanfragen gespeichert sind. Diese Abfrage versucht, alle Zeilen abzurufen, die den folgenden Kriterien entsprechen:
>=
zu einem DateDiese Abfrage funktioniert nicht, sollte aber einen Überblick darüber geben, was ich versuche:
SELECT * FROM `analytics` WHERE `date` >= '2021-01-01' GROUP BY `query` HAVING COUNT(*) >= 3 AND GROUP BY `user` HAVING COUNT(*) >= 2 ORDER BY id DESC;
Beispieldaten
id | Benutzer | Abfrage | Datum |
---|---|---|---|
1 | 5 | Was ist ein Hund? | 2021-01-01|
5 | Was ist ein Hund? | 2021-01-01 | |
6 | Was ist ein Hund? | 2021-01-014 | |
Was ist ein Hund? | 2021-01-01 | 5 | |
Was sind Brüder? | 2021-01-01Beispiel SQL |
Ich weiß, dass Sie GRUPPE NACH-Spalten mit Kommas trennen können, aber ich kann anscheinend nicht herausfinden, wie ich für jede Spalte unterschiedliche Werte festlegen kann.
P粉8183174102024-02-27 00:58:40
您可以在同一个 HAVING
子句中设置这两个条件:
SELECT `query` FROM `analytics` WHERE `date` >= '2021-01-01' GROUP BY `query` HAVING COUNT(*) >= 3 AND COUNT(DISTINCT `user`) >= 2;