如何根据第三个字段将一个字段的值分配给另一个字段?
答
A CASE
声明将是最简单的方法来做到这一点。以下SQL比较两列。你可以改变这个使用WHEN Col2 = 'xxxx' THEN xxxx'
。
SELECT Col1, Col2, CASE
WHEN Col2 = Col1 THEN 'True'
ELSE 'False'
END AS 'Columns Match'
FROM Table
答
你可以一个SELECT
语句中使用CASE
条款 - IF
不会SQLServer的这种方式工作。
答
希望这会导致你在正确的方向
Select
Case
when columnthree = 'VALUE'
then column2
else 'do something'
end as [column name]
from
table name
而且你可能需要做一些转换如果两列数据类型是不同的
答
select Alpha, Beta, Gamma,
case
when Alpha > 2 * Beta then Gamma
when Beta = Gamma then Alpha + 3
when Gamma = 2 then 13
else 42
end as 'Omega'
from Alphabet
首场比赛胜利。
CASE返回一个值,因此它可以在各种情况下是有益的:
delete ... where case when Id > Limit then 1 else 0 end = 1
update ... set ShoeSize = case when Wide = 1 then ShoeSize + 1 else ShoeSize end, ...
你想,如果第三列*不*等于某个值来做些什么? – AakashM 2012-01-11 15:18:09
到目前为止,您应该真正发布示例数据,预期输出和查询。 – jadarnel27 2012-01-11 15:19:45