2016-11-13 13 views
-3

私は一緒に仕事をするためにグループで注文しようとしていますが、誰かが私が間違っていることを教えてくれる人はいません。グループで働いていないと注文します

$get1_msg1 = mysqli_query($con, "select * from (select message_id, sender, receiver, message, read_status, time_sent from user_messages where receiver='".$_SESSION['userid']."' order by time_sent desc) as temp group by sender order by time_sent desc "); 

私は何が間違っているのか分かりません。

+0

を試すことができます..あなたはなぜ私を説明できますか?あなたの目標を説明することができます – scaisEdge

+0

私は簡単なメッセージシステムに取り組んでいます。私は個々の会話をメッセージの受信トレイのようにリストしたいのですが、私は受信したメッセージをリストするだけのメッセージをすべて一覧にしたくありませんが、すべてのメッセージの代わりに1人だけです。私はあなたが理解できるようにそれを説明するかどうかはわかりませんが、私はその最善の方法と思います。 – scubby3

+0

私はfirts提案を投稿しました。最終的にあなたの投稿を更新して、適切なデータサンプルと期待される結果を追加します。 – scaisEdge

答えて

0

あなたのコメントをもとに、あなたは集計関数なしでグループを使用している

"select message_id, sender, receiver, message, read_status, time_sent 
    from user_messages where message_id in (
      select message_id 
      from user_messages 
      where (sender, time_sent) in ( 
        select sender, max(time_sent) 
        from user_messages 
        where receiver='".$_SESSION['userid']."' 
        group by sender 
     ) 
    ) 
    and receiver='".$_SESSION['userid']."'"; 
+0

申し訳ありませんが、すべてのメッセージがリストされています。これは私が欲しいものです。私は3人のユーザーが私にメッセージを送信している場合3人のユーザーのうち1人が私に5人のメッセージを送信し、もう1人が私に1人を送ってきます1ユーザーが送るすべてのメッセージを表示したくありません最近のユーザーからdescを使用しています。私が唯一の問題で働いていたことをリストアップしたクエリは、最近のものから最近のものへの結果を順序付けしないということです。 – scubby3

+0

@ scubby3答え更新希望が便利です – scaisEdge

関連する問題