私は2つのテーブルを持っています(以下の画像に示すように)inbox_messages_tableとusers_table
だから私がやろうとしているのはuser_idの2つのテーブルを結合することですが、私のinbox_messages_tableには、Webサイト自体のために作成したIDがあり、(-1)一意であるため、どのようにしてこれを取得して取得できますか他の人との-1も?
これまでの私の質問はこれです:
// $user_id is the logged in user
SELECT * FROM inbox_messages_table i
JOIN users_table u ON i.from_user_id = u.user_id
WHERE u.banned = 0
AND to_user_id = $user_id
AND deleted = 0 ORDER BY message_timestamp DESC
JOINの代わりにLEFT JOINを使用できます。
LEFT JOINを使用すると、結合テーブルに一致するレコードがない場合でも、クエリは左側のテーブル、つまりFROMのレコードからすべてのレコードを返します。
SELECT * FROM inbox_messages_table i
LEFT JOIN users_table u ON i.from_user_id = u.user_id
WHERE u.banned = 0 AND to_user_id = $user_id AND deleted = 0 ORDER BY message_timestamp DESC