如何查询每个日期和每个用户的特定行?

时间:2016-07-13 08:10:51

标签: mysql

我有这张桌子:

user | date
 1   | 2016-08-10
 1   | 2016-09-10
 1   | 2016-10-10
 2   | 2016-08-15
 2   | 2016-08-18
 2   | 2016-08-19

我想在这里做的是为每个日期获取特定用户。例如,我想让用户 date> = 2016-08-12 。我的预期结果是:

user | date
 1   | 2016-09-10
 2   | 2016-08-15

我会注意到这些日期是实际日期,不同的用户有不同的日期,因此在这个例子中,两个用户的date2值将是不同的。

是否有人能够帮助我为此制定正确的查询?

谢谢

2 个答案:

答案 0 :(得分:1)

您可以尝试此查询。

SELECT 
T.user,
MIN(T.date) AS min_date
FROM your_table T
WHERE T.date >= '2016-08-12'
GROUP BY T.user;

SQL FIDDLE DEMO

注意:此查询选择的第一个日期大于每个用户的输入日期。

答案 1 :(得分:0)

试试这个

    SELECT * FROM table WHERE date > '2016-08-12 00:00:00'

限制date列将被声明为Date类型