通过比较行

时间:2017-01-25 06:16:32

标签: sql-server recursion common-table-expression

嗨,请你帮忙解决下面的情况,我需要在比较与custid 100相关的所有行并确定谁有最新日期(100或400)id应该保持活动状态时才进行更新,我的现有更新基于单行比较的语句更新。你能帮忙我们如何通过递归来解决这个问题并在同一个查询中激活更新吗?

表格

   ID   CustID    MCustID Date        MDate
   1    100       200     2017-01-10  2017-01-15 
   2    100       300     2017-01-10  2017-01-07
   3    100       400     2017-01-10  2017-01-21

CODE

update A
set active = 0
from Cust A inner join tblMatch M
on A.CustomerID = case when M.Date < M.MDate then M.CustId else M.MCustId     end

0 个答案:

没有答案