私のデータベースには次の3つのテーブルがあります。これは、foursqureのようなアプリケーションに使用されます。私はこれの一番下で私が尋ねたsqlステートメントを書く問題について助けが必要です。
ありがとうございました
user_details
user_id | fname
----------------
1 | Losh
8 | Dush
9 | Rosh
10 | NELL
友達
user_idf |user_idff
----------------
1 | 8
8 | 9
10 | 1
チェックイン
check_in_id |user_id | place | date
--------------------------------------------
1 | 8 | Hotel | 01/01/2012
2 | 9 | Home | 05/01/2012
3 | 1 | Junction | 08/01/2012
4 | 1 | Rest | 11/01/2012
5 | 9 | Hotel | 15/01/2012
6 | 8 | Home | 15/01/2012
私は8とユーザー8の詳細と友達であるユーザーを取得し、次のように場所をチェックインします
SELECT a.`user_id`, a.`fname` , b.*
FROM `user_details` a, `check_in` b
WHERE (b.user_id = 8
OR b.user_id in (select user_idf from friends where user_idff = '8' union select user_idff from friends where user_idf = '8')) AND b.user_id = a.user_id
8とユーザー8の詳細と、それらのユーザーの代わりに最後のチェックを行う友人を選択するSQLを作成するにはどうすればよいですか?
説明::
私は次のような答えを求めています
user id name place date
1 LOSH Rest 11/01/2012
8 DUSH HOME 15/01/2012
9 ROSH HOTEL 15/01/2012