跳过每个唯一列值的行

时间:2017-07-24 16:13:07

标签: mysql sql database

我有一个表,我想从中提取所有行的所有列值。但是,查询需要能够跳过id_customer的每个唯一值的第一个条目。可以假设总是至少有两行包含相同的id_customer

我编写了一些示例数据,可在此处找到:http://sqlfiddle.com/#!9/c85b73/1

我想要达到的结果是这样的:

id_customer | id_cart | date
----------- | ------- | -------------------
1           | 102     | 2017-11-12 12:41:16
2           | 104     | 2015-09-04 17:23:54
2           | 105     | 2014-06-05 02:43:42
3           | 107     | 2011-12-01 11:32:21

如果需要更多信息/更好的解释,请告诉我,我希望它是一个安静的利基解决方案。

1 个答案:

答案 0 :(得分:3)

一种方法是:

select c.*
from carts c
where c.date > (select min(c2.date) from carts c2 where c2.id_customer = c.id_customer);

如果您的数据很大,则需要carts(id_customer, date)上的索引。