我有两张桌子
TABLE 1 : Stage_product
PRODUCT_ID SYS_ROWDATETIMEUTC
1 2015-03-13 06:09:30.040
2 ....
3
TABLE 2 : DIM_Product
PRODUCT_ID SYS_ROWSTARTDATETIMEUTC SYS_ROWISCURRENT
1 2014-03-13 06:09:30.040 0
2 2015-03-13 06:09:30.040 1
我想做一个更新语句,如果第一个表中的值SYS_ROWDATETIMEUTC
比表中的值SYS_ROWSTARTDATETIMEUTC
更新,那么第二个表中的值SYS_ROWISCURRENT
设置为0,否则为1.
答案 0 :(得分:0)
您可以使用以下查询:
UPDATE t2
SET t2.SYS_ROWISCURRENT = CASE
WHEN t1.SYS_ROWDATETIMEUTC > t2.SYS_ROWSTARTDATETIMEUTC THEN 0
ELSE 1
END
FROM Table2 t2
INNER JOIN Table1 t1 ON t2.PRODUCT_ID = t1.PRODUCT_ID
我假设您要比较同一产品的两个表之间的日期。