Sql 可以使用大小写更改空列的值吗?
我知道您可以使用COALESCE和ISNULL,但我只是想知道您是否可以使用SELECT case 我有这个Sql 可以使用大小写更改空列的值吗?,sql,tsql,Sql,Tsql,我知道您可以使用COALESCE和ISNULL,但我只是想知道您是否可以使用SELECT case 我有这个 SELECT (CASE Table.Column WHEN ' ' THEN '1/1/2001' Else Table.Column End),Column2 FROM Table 那没用,所以我试着: SELECT (CASE Table.Column WHEN NULL THEN '1/1/2001' Else Table.Column End),Column2 F
SELECT (CASE Table.Column WHEN ' ' THEN '1/1/2001' Else Table.Column End),Column2
FROM Table
那没用,所以我试着:
SELECT (CASE Table.Column WHEN NULL THEN '1/1/2001' Else Table.Column End),Column2
FROM Table
没什么
只是好奇。谢谢 使用
IS
和NULL
SELECT CASE WHEN Column IS NULL
THEN '1/1/2001'
ELSE Column
END,
Column2
FROM Table
使用
IS
和NULL
SELECT CASE WHEN Column IS NULL
THEN '1/1/2001'
ELSE Column
END,
Column2
FROM Table
空值require
是
关键字,而不是当
或=
空值require是
关键字,而不是当
或=
时,您当然可以这样使用谓词:
select
case
when t.Column1 is null then '1/1/2001'
else t.Column1
end
,t.Column2
from Table1 as t
2. 按顺序计算参数,并返回最初未计算为NULL的第一个表达式的当前值
select
coalesce(t.Column1, '1/1/2001')
,t.Column2
from Table1 as t
选择
联合(t.Column1,'1/1/2001')
,t.Column2
表1中的t
您当然可以这样使用谓词:
select
case
when t.Column1 is null then '1/1/2001'
else t.Column1
end
,t.Column2
from Table1 as t
2. 按顺序计算参数,并返回最初未计算为NULL的第一个表达式的当前值
select
coalesce(t.Column1, '1/1/2001')
,t.Column2
from Table1 as t
选择
联合(t.Column1,'1/1/2001')
,t.Column2
表1中的t
你的意思是做一次
更新
?否则,您只是在NULL
之前缺少IS
,您的意思是执行更新
?否则,在NULL
之前,您只是缺少了IS
,有时我会想,您可以在案例中使用条件语句,我知道您可以做到!谢谢大家!@苏德:没问题。另外,您的第二个案例不起作用的原因是,与null
(即:没有is[not]null
谓词)的直接比较总是错误的()有时我会突然想到,您可以在案例中使用条件语句,我知道您可以做到!谢谢大家!@苏德:没问题。另外,第二个案例不起作用的原因是,与null
(即:没有is[not]null
谓词)的直接比较总是错误的()