id month status
1 1997-11-01 A
1 2015-08-01 B
2 2010-01-01 A
2 2010-02-01 B
2 2012-10-01 C
尋找下一行的值,我想格式化爲:的MySQL通過ID
id month lead_month status
1 1997-11-01 2015-08-01 A
1 2015-08-01 NOW() B
2 2010-01-01 2010-02-01 A
2 2010-02-01 2012-10-01 B
2 2012-10-01 NOW() C
MySQL是新的給我,和我有麻煩纏繞我的頭周圍的變量。我寧願使用簡單的LEAD()
與PARTITION
,但不幸的是,我不能。
這裏是我的嘗試,不工作:
SET @lead = '1995-01-01'; --abitrary floor
select id, month, status, @lead, @lead:=month from table
輸出看起來是這樣的,這也不會,如果ID的自排檢查排是相同的:
id month lead_month status
1 1997-11-01 1995-01-01 A
1 2015-08-01 1997-11-01 B
2 2010-01-01 2015-08-01 A
2 2010-02-01 2010-01-01 B
2 2012-10-01 2010-02-01 C