質問
2つのテーブルがあります。そのうちの1つ(user_profileテーブル)には「user_profile_id」という名前のフィールドがあり、もう1つ(user_friendテーブル)には、最初のテーブルにfkである「user_profile1_id」と「user_profile2_id」という2つのフィールドがあります。
user_prideテーブルにないユーザーがuser_profile1_idではなく、user_profile2_idでもないユーザーがいるかどうかを確認したい。
どのクエリを使用する必要がありますか?
編集:
CREATE TABLE user_profile (
--fields
)
CREATE TABLE user_friend (
user_profile1_id INT,
user_profile2_id INT
)
解決
使う LEFT JOIN
null値を確認してください。何かのようなもの:
SELECT profile.* FROM user_profile profile
LEFT JOIN user_friend friend1 ON friend1.user_profile1_id = user_profile_id
LEFT JOIN user_friend friend2 ON friend2.user_profile2_id = user_profile_id
WHERE friend1.user_profile1_id IS NULL AND friend2.user_profile2_id IS NULL
所属していません dba.stackexchange