给定下表,序列号和日期应该递增
+----+--------+------------+
| id | series | date |
+----+--------+------------+
| 1 | 10 | 2020-08-13 |
| 2 | 9 | 2020-08-02 |
| 3 | 8 | 2020-06-23 |
| 4 | 7 | 2020-06-08 |
| 5 | 6 | 2020-05-20 |
| 6 | 5 | 2020-05-05 |
| 7 | 4 | 2020-05-01 |
+----+--------+------------+
有没有办法检查是否有不遵循此模式的记录?例如,第2行的序列号较大,但其日期早于第3行
+----+--------+------------+
| id | series | date |
+----+--------+------------+
| 1 | 10 | 2020-08-13 |
| 2 | 9 | 2020-06-02 |
| 3 | 8 | 2020-07-23 |
| 4 | 7 | 2020-06-08 |
| 5 | 6 | 2020-05-20 |
| 6 | 5 | 2020-05-05 |
| 7 | 4 | 2020-05-01 |
+----+--------+------------+
3条答案
按热度按时间smtd7mpg1#
可以使用窗口函数:
或者:
jpfvwuh42#
你可以用
lag()
:uyhoqukh3#
您可以使用如下自连接(假设您的表名为“series”)获取有问题的行及其相应的冲突行: