こんにちは私のプロジェクトの1つで、クライアントの旅行データを次のようなテーブルに保持しています
id | user | country | travel_date |
------------------------------------------------------------------
1 | 12 | 4 | 2012-03-13 16:57:41 |
1 | 17 | 8 | 2012-03-13 16:57:41 |
1 | 12 | 5 | 2011-03-13 16:57:41 |
1 | 13 | 8 | 2011-03-13 16:57:41 |
1 | 11 | 3 | 2011-03-13 16:57:41 |
1 | 10 | 1 | 2013-03-13 16:57:41 |
1 | 12 | 1 | 2012-03-13 16:57:41 |
そして、私たちはこのような国のテーブルを持っています
id | name
------+----------
1 | India
2 | China
8 | Hongkong
3 | Singapore
このようなユーザーテーブルを取得しました
id | Name
--------+----------
12 | name
17 | name 2
11 | name 3
10 | name 4
そして、私たちは次のようなレポートを取る必要があります
- 2012年に中国とインドを旅行したクライアント
クエリは
SELECT DISTINCT user_id
FROM traveled_details
WHERE (country=1 OR country=2) AND YEAR(travel_date)=2012
また、Clientsテーブルも取得しました。すべてのレポートは正常に機能しています。
しかし、2012年に中国を旅行しなかったクライアント、これまでに旅行したことのないクライアントのリスト、またはインドを旅行する必要のあるクライアントのレポートを必要とする新しい要件がありました。
私のテーブル構造は、そのようなクエリをフェッチするのに十分ですか?はいの場合、私はそのクエリと少し混乱しています...誰か助けてください?