次のクエリを作成しました。
(選択する privatemsgs.id、 privatemsgs.useradn、 privatemsgs.useraid、 privatemsgs.title、 privatemsgs.created、 privatemsgs.timee、 privatemsgs.isread、 u.photo AScreatorphoto、 privatemsgs.relatedto FROM privatemsgs 左参加 ユーザーASuON(privatemsgs.useraid = u.id) WHERE userbid = '5' AND relatedto=0およびbdel=1) ユニオンオール (選択する privatemsgs.id、 privatemsgs.useradn、 privatemsgs.useraid、 privatemsgs.title、 privatemsgs.created、 privatemsgs.timee、 privatemsgs.isread、 u.photo AScreatorphoto、 rel.relatedto FROM privatemsgs AS rel JOIN privatemsgs ON(rel.relatedto = privatemsgs.id) 左参加 ユーザーASuON(rel.useraid = u.id) WHERE rel.userbid = '5') GROUP BY ID 時間で注文DESC
このクエリは、テーブルからすべてのPrivatemsgsを選択し、メールのように動作します。
ユーザーbにメッセージを送信し、ユーザーbが応答した場合。各ユーザーの受信トレイと送信トレイにメッセージを表示したい。
メインメッセージのIDに「関連」としてマークされたプライベートメッセージへのコメント。
クエリは機能しますが、表示されているメッセージを複製します(同じメッセージが何度も表示されます)。修正するために「GROUPBY id」を実行しようとしましたが、エラーが発生しました。
#1064-SQL構文にエラーがあります。'GROUP BY id ORDER BY timee DESC'の近くで使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください。
ありがとうございました!!