如果数据存储在每日分区中,那么构建查询以识别两个不同日期分区之间的一个值的更改的最佳方法是什么?
日期分区一06/20
为汽车颜色命名
约翰沃尔沃蓝色
Mary Merc Green
保罗宝马红色
日期分区二06/21
为汽车颜色命名
约翰沃尔沃蓝色
玛丽福特格林
保罗宝马红色
在这种情况下,在20到21个分区之间,Mary从Merc变为福特,所以我想要提取该行的所有值以及值之前和之后。返回的结果应该是:
Mary - Merc / Ford - Green
答案 0 :(得分:2)
试试这个
SELECT A.Name, A.Car, B.Car, A.Color
FROM myTable A INNER JOIN myTable B
ON A.DatePartition = '20 Jun 2017'
AND B.DatePartition = '21 Jun 2017'
AND A.Name = B.Name
AND A.Car <> B.Car