最高の順序でグループ化するのに問題のないクエリがあります。私が気づいたのは、ids
を手に入れることができるが、vmsg
フィールドの値はid
の値に対応していない。グループクエリは対応する値を評価しません
たとえば、idが28
の場合、vsmg
'hello'に対応しますが、クエリIDを実行した後は、28
という別の値が選択されます。私は最大ids
を得る
:
これは私がこれを取得することは、バックエンド
と私のスクリプト
SELECT
MAX(id) as id, vmsg, sender_id, fname, lname, profile_pix, profile.profile_id
FROM
chats
LEFT JOIN
profile
ON
chats.sender_id = profile.profile_id
WHERE
reciever_id = 1
GROUP BY
(sender_id)
でからどのように見えるかですしかしvmsg
の値は対応していません。
グループに適用して集計関数を使用すると、グループに存在しないスカラーフィールドをMySqlで使用すると、最初のものが使用されます。 –
GROUP BYは無効です。互換性モードでない限り、新しいMySQLバージョンでエラーが発生するか、古いバージョンでは予期しない結果が返されます。 GROUP BY句が指定されている場合、SELECTリストの各列参照は、グループ化列を特定するか、または集合関数の引数でなければなりません。 – jarlh
答えは「MAX()」ではなく、 –