私は4つのテーブルを持っています... users、friends、articles、article_shares(書かれているとおり)
ユーザーは、記事を読むように招待するだけで、作成した記事を共有できます。私が見つけようとしているのは、まだ記事を共有するよう招待されていない (id 34) 記事の作成者 (id 63) の友人のリストです。
したがって、テーブル ユーザー:
user_id - name
10 Dan
11 Doug
12 Chad
13 Ben
63 John
テーブルの友達
user_id - friends_id
63 10
63 11
63 12
63 13
テーブル記事
article_id - user_id_creator
34 63
テーブル article_shares
article_id - user_id_sharedWith
34 10
34 11
上記のデータから、ID 12 & 13 のユーザーを返したい.. chad & ben
これが私が試していることです:
select u.name, u.user_id, u.live_prof_pic from users u
join friends f on f.user_id = u.user_id
join articles a on a.user_id_creator = f.friends_id
join article_shares as on as.articl_id <> a.article_id
where ((f.friends = '63') && (a.article_id = '34'))
単に 0 を返すだけです
何か案は?