菜鸟求助啊~~~TAT~
比如
ID DATE SKU
1 2015-01-01 001
1 2015-02-23 857
2 2015-03-25 005
2 2015-08-25 001
2 2015-01-23 223
3 2015-03-05 257
3 2015-02-22 895
我怎么在最后加一个标签,把第最早消费的记录打上flag 1
变成
ID DATE SKU flag
1 2015-01-01 001 1
1 2015-02-23 857
2 2015-03-25 005
2 2015-08-25 001
2 2015-01-23 223 1
3 2015-03-05 257
3 2015-02-22 895 1
------解决思路----------------------
UPDATE table1
SET flag = 1
WHERE NOT EXISTS(SELECT *
FROM table1 t
WHERE t.SKU = table1.SKU
AND t.DATE < t.DATE)
------解决思路----------------------
试试这个:
select id,date,sku,
case when flag = 1 then flag else null end as flag
from
(
select *,
row_number() over(partition by id order by date ) flag
from tb
)t