我有一個包含兩個日期列的表。 DATE1有時是NULL,有時包含重複的值。 DATE2始終填充且唯一。我的表格按最新的DATE2日期排序。與前一行的MySQL日期時間比較
我想創建一個新的日期列,其中DATE1將被選中,除非它的值是從下一行重複或它是NULL。在這種情況下,我想取DATE2的值。我還需要兩個布爾列,告訴我何時滿足這些條件。讓我用一個例子來演示,以便更清晰。
在下面的表中,行5和6具有的2011年7月27日的值,所以我想5行的新日期列設置爲2011年8月4日(這是DATE2)。在第3行中,DATE1的值爲NULL,所以我想採用DATE2的值。
我已經嘗試了一些內部選擇語句,但不能得到這個工作。有任何想法嗎?
我的表,因爲它目前矗立在數據庫:
Row DATE1 DATE2
--------------------------------------
1 Oct 10, 2011 Nov 13, 2011
2 Oct 10, 2011 Oct 10, 2011
3 NULL Oct 8, 2011
4 Aug 12, 2011 Aug 12, 2011
5 Jul 27, 2011 Aug 4, 2011
6 Jul 27, 2011 Jul 28, 2011
7 Jul 1, 2011 Jul 26, 2011
8 May 24, 2011 Jun 13, 2011
我期待最終的結果是什麼樣子:
Row FINAL_DATE DATE1_DUPLICATE DATE1_WAS_NULL
----------------------------------------------------------
1 Nov 13, 2011 TRUE FALSE
2 Oct 10, 2011 FALSE FALSE
3 Oct 8, 2011 FALSE TRUE
4 Aug 12, 2011 FALSE FALSE
5 Aug 4, 2011 TRUE FALSE
6 Jul 27, 2011 FALSE FALSE
7 Jul 1, 2011 FALSE FALSE
8 May 24, 2011 FALSE FALSE
非常感謝!
@MattFenwick。如果你認爲這是誤導性的,你能建議一個更好的標籤嗎? – McGarnagle 2012-04-09 20:19:58
@MattFenwick很好的通話,你讀了我的腦海。 – McGarnagle 2012-04-09 20:24:23