MySQL选择范围内的值,而该值不在另一个范围内

时间:2018-08-30 14:21:10

标签: mysql subquery notin

我们有一个表格,用于记录每个客户请求,每个请求都有一个created_atcustomer_email列。

mysql> select * from requests;

+---------------------+-----------------------+
| created_at          | customer_email        |
+---------------------+-----------------------+
| 2016-08-08 14:05:50 | user1@example.com     |
| 2016-08-08 14:05:51 | user2@example.com     |
| 2017-08-15 14:41:40 | user3@example.com     |
| 2017-08-15 15:17:25 | user2@example.com     |
| 2018-08-15 15:30:41 | user1@example.com     |
+---------------------+-----------------------+

我正在尝试获取08/2018中customer email的记录,但之前没有创建请求。换句话说,找出在08/2018年创建请求的客户是新客户。
这是我正在尝试的查询,它返回0

created_at

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

使用GROUP BY子句尝试HAVING

使用MIN函数,我们可以找到first_created_at的{​​{1}},然后利用HAVING子句,将结果集限制为具有{{ 1}}在 08/18 之后。

customer_email