如何根据SQL中的条件更新列?

时间:2013-07-19 01:17:41

标签: tsql sql-server-2005

我有以下专栏:

Cost | Rate1 | Rate2 | Rate3 | IsContainRate
100; 95; 100; 105; Y
105; 100; 110; 120; N
95; 95; 100; 130; Y

基本上,我想基于

更新IsContainRate列
IF (Cost = Rate1 OR Cost = Rate2 OR Cost=Rate3) THEN 
update IsContainRate=Y 
ELSE IsContainRate = N

由于

1 个答案:

答案 0 :(得分:1)

在TSQL中,您可以使用CASE语句来执行条件更新。

以下是一个例子:

UPDATE yourTable 
    SET isContainRate = CASE 
                           WHEN (Cost = Rate1 
                                  OR Cost = Rate2 
                                  OR Cost = Rate3) 
                              THEN 'Y' 
                           ELSE
                                'N'
                        END 

案例陈述将根据您的表达评估为“Y”或“N”。