0
私は2つのSQLテーブルを持っています。グループ化されたメッセージから最後のメッセージを返すSQL
今の私のクエリは次のとおりです。
SELECT messages.*, username FROM messages
JOIN users ON messages.from_ID = users.user_ID
WHERE to_ID = 19
GROUP BY thread_ID
ORDER BY msg_ID DESC;
エンティティ(メッセージ):
msg_ID
from_ID
to_ID
subject
message
date
今、それはto_ID = 19
FIRSTメッセージを返しています。私がしたいのは、LATESTというメッセージが最高のmsg_ID
で表示されていることを示しています。私はそれにorder by
を行うことができますが、私はそれがgroup by
ステートメントに達する前に何かをしなければならないので、私のSQL文は1つの行を返します。
これらは2つの行が返される資格がある場合は、次の
msg_ID from_ID to_ID subject message date thread_id username
15 26 19 Hey testing string2 1477750565 1 testing
17 26 19 Hey testing string. 1477750594 1 testing
私の現在の結果:
msg_ID from_ID to_ID subject message date thread_id username
15 26 19 Hey testing string2 1477750565 1 testing
私が欲しいもの:
msg_ID from_ID to_ID subject message date thread_id username
17 26 19 Hey testing string. 1477750594 1 testing // msg_ID is higher here