私が3つのテーブルを持っているとしましょう:
users
名前ID付きemails
メールアドレスを持つ行を含むmessages
メールの日付とタイトルを含む行を含む
もちろん、2番目と3番目のテーブルはすべて、ユーザーのIDを使用して最初のテーブルと照合できます。
各ユーザー、メールアドレス、最新のメッセージの日付を1回だけ返すクエリが必要です。
これを使用する場合:
SELECT name,email,title,date
FROM users
JOIN emails ON users.id = emails.user_id
JOIN messages ON messages.user_id = emails.user_id
group by name
order by date desc
参加とグループ化の後に注文が行われたため、最新のメッセージが表示されません。ユーザーからそれぞれ1通のメールが届きます。メールは日付順に並べ替えられています。
これは1回の参加で実行できますか?私は何が欠けていますか?
使用できるダミーデータベースのPastebin:http: //pastebin.com/1x273aEe-実際のデータベースはこれとまったく同じではありませんが、同じ問題です。