寻找支持以查找数字是否返回到同一列的相同ID中的前一个数字。
以下是数据集的示例。
ID Number Date Sequence Count
10000B1 60 28.10.2015 10
10000B1 57 28.09.2015 9
10000B1 58 28.08.2015 8
10000B1 57 29.07.2015 7
10000B1 56 30.06.2015 6
10000B1 55 01.05.2015 5
10000B1 54 05.04.2015 4
10000B1 53 06.03.2015 3
10000B1 52 08.02.2015 2
10000B1 51 09.01.2015 1
如果在相同的ID中,我想找到例外,Number再次回到之前的号码。
例如:编号序列计数7,编号为57,再次编号为9序列,编号为57.
或同一列中的数字从58而不是59返回到57。
您能否在SQL中支持我使用SQL查找这些类型的案例?
感谢。 拉维
答案 0 :(得分:1)
也许这就是你想要的:
select t.*
from Apple t
where exists (select 1
from Apple t2
where t2.id = t.id and
t2.number = t.number and
t2.sequence < t.sequence
);
答案 1 :(得分:0)
你可以尝试
select a.* from your_table as a
inner join your_table as b on a.date > b.date and a.number < b.number
使用您的列名称
a.ID, a.`Number`, a.`Date`, a.`Sequence Count`
from from apple_table as a
inner join apple_table as b on a.`Date` > b.`Date` and a.`number` < b.`number`
数字和顺序的应为
a.ID, a.`Number`, a.`Date`, a.`Sequence Count`
from from apple_table as a
inner join apple_table as b on a.`Sequence Count` < b.`Sequence Count` and a.`number` > b.`number`