嗨,在我的一个项目中,我们将客户的旅行数据保存在这样的表格中
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
我们也得到了一个客户表。所有报告都运行良好。
但是我们有一个新的要求,需要2012年没有在中国旅行的客户报告,或者曾经联合国旅行的客户名单,或者需要在印度旅行的客户
我的表结构是否足以获取这样的查询?如果是的话,我对那个查询有点困惑......有人请帮忙吗?