Re: [SQL ] 如何刪除Table中不同列且不同欄位重覆值?

看板Database (資料庫)作者 (winall)時間8年前 (2016/04/01 11:10), 8年前編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/4 (看更多)
select A.* from Table A left join ( select distinct C.ID from( select distinct ID,OldValue from Table) C join ( select distinct ID,NewValue from Table) D on C.ID=D.ID and C.OldValue=D.NewValue )B on A.ID=B.ID where B.ID is null 如有時間條件自行加上 ※ 引述《rockchangnew (rock)》之銘言: : ※ 引述《seabok (思念,留在1999)》之銘言: : : 資料庫名稱:MS SQL : : 資料庫版本:2008 : : 內容/問題描述: : : 請問各位賢拜: : : 有一Table A如下: : : ID UPDate OldValue NewValue : : 001 2016/3/24 AAA BBB : : 002 2016/3/23 CCC DDD : : 002 2016/3/24 DDD CCC : : 需求是想撈出在日期區間內有異動的資料,也就是最終的OldValue <> NewValue。 : : 可是在表中第2、3列,ID=002的資料在3/23先是自CCC改成DDD, : : 然後在3/24又自DDD改回CCC,最終結果其實是沒有異動。 : : 請問SQL該如何下才能直接排除這種情形呢?(也就是只有ID=001這筆符合) : : 先感謝大家了~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.139.97.85 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1459480245.A.C21.html ※ 編輯: winall (220.139.97.85), 04/01/2016 11:31:56
文章代碼(AID): #1M_UQrmX (Database)
文章代碼(AID): #1M_UQrmX (Database)