Ich habe diese Anfrage:Wie nur eine von jedem Wert in einer Spalte bekommen
SELECT
r.rev_id, rs.name, COUNT(ws.user_id) as likes
FROM
Reviews AS r
LEFT JOIN
Wasliked AS ws ON r.rev_id = ws.rev_id
LEFT JOIN
Restaurants AS rs ON rs.rid = r.rest_id
GROUP BY
rs.name, r.rev_id
ORDER BY
likes DESC
und das Ergebnis ist:
rev_id name likes
------------------------
7 rest1 5
10 rest1 3
6 rest1 2
2 rest3 2
1 rest2 2
5 rest3 1
8 rest4 1
Aber ich mag das Ergebnis so sein:
rev_id name likes
--------------------------
7 rest1 5
2 rest3 2
1 rest2 2
die 3 höchsten Ergebnisse mit verschiedenen Namen.
Ich habe bereits versucht, nur group by rs.name
anstelle von rs.name,r.rev_id
, aber das verursacht einen Fehler.
Vielen Dank im Voraus
Es funktioniert immer noch nicht, zeigt falsche Ergebnisse mit dem gleichen Namen – orestiskim