2
I haben, indem sie mit zwei Spalten zu gruppieren versucht:Gruppe durch zwei Spalte mit vice versa Wert
SELECT recipient_id, sender_id, count(*) FROM messengers WHERE recipient_id=41 OR sender_id=41 group by recipient_id, sender_id
Der Ausgang wird, wie unten dargestellt werden:
Wie kann ich Reihe kombinieren 1 und Zeile 2 als Zeile, da recipient_id und sender_id denselben Wert haben, nämlich 40 und 41.
sieht es so weit gut. Ich werde versuchen, es zu benutzen, und lass uns warten, bis andere antworten, bevor ich deine als angenommene Antwort abstimme. Vielen Dank! –
Ich habe Ihre Antwort geändert 'SELECT * FROM (SELECT * FROM Messenger ORDER BY ID desc) als A WHERE recipient_id = 41 ODER sender_id = 41 GROUP BY LEAST (recipient_id, sender_id), GREATEST (recipient_id, sender_id)' aber ich bekomme Probleme, dies zu Laravel Query Builder zu konvertieren. –
@ Mr.Byte Der ANSI 92-Standard verlangt, dass Spalten, die in SELECT erscheinen, entweder auch in der GROUP BY erscheinen oder Aggregate sind. Daher sollten Sie hier nicht 'SELECT *' verwenden. Sie können eine neue Frage mit Ihrem Laravel-Problem stellen. –