2 つのテーブルがあり、1 つのテーブルはユーザー用で、もう 1 つのテーブルは user_interested_in_who テーブルです。
ユーザーが別のユーザーに興味を持っている場合、その 2 人のユーザーの ID を user_interested_in_who テーブルに挿入します。
私のテーブルのスキーマは次のとおりです。
Users user_interested_in_who
id id
name this_user (id from the users table)
interested_in_this_user (id from the users table)
interested_or_not (1 = yes, 0 = no)
テーブルを結合してクエリを実行したいので、クエリは次のようになります。
SELECT users.id, users.name, user_interested_in_who.interested_or_not
FROM users
LEFT JOIN user_interested_in_who
ON user_interested_in_who.this_user = 1 *//1 is the id of the current log in user*
GROUP BY users.id
このクエリの問題は、interested_or_not 列がすべて 1 であることです。
私の質問は、user_interested_in_who テーブルにレコードが見つからない場合に NULL を返すようにクエリを実行する方法と、レコードが 0 の場合に user_interested_or_not 列に 0 を返すようにクエリを実行する方法です。
編集:
この種のテーブルを返すにはどうすればよいですか:
table:
id | name | interested_or_not
1 jess NULL
2 erika 1
3 jil 0
4 adrian NULL
....
1050 mich 1