チャット ツールを開発していますが、SQL が group by と order by で正しい結果を返すことに問題があります。テーブルの構造は次のとおりです。
テーブル名: チャット
id | from | to | sent | read | message
「from」と「to」は符号付き整数 (ユーザー ID) です。「sent」は、メッセージが送信されたときのタイムスタンプです。'message' はテキスト msg 'read' は int (未読の場合は 0、既読の場合は 1) です。
ユーザーごとにグループ化された最新のメッセージのリストを返そうとしています
例えば
id from to message sent read
7324 21 1 try again 1349697192 1
7325 251 1 yo whats up 1349741502 0
7326 251 1 u there 1349741686 0
クエリの後にこれを返す必要があります
id from to message sent read
7326 251 1 u there 1349741686 0
7324 21 1 try again 1349697192 1
ここに私の質問があります
$q ="SELECT chat.to,chat.read,chat.message,chat.sent,chat.from FROM `chat` WHERE chat.to=$userid GROUP BY chat.from ORDER BY chat.sent DESC,chat.read ASC LIMIT ".(($page-1)*$count).",$count";
目的の結果が返されません。