不知道你具体什么数据库,,给出sqlserver,你上面写的就对了,
给你写出详细的测试记录吧
CREATE TABLE test(a INT,b VARCHAR(10))
INSERT INTO dbo.test
( a, b )
SELECT 1,'a'
UNION ALL
SELECT 2,'b'
UNION ALL
SELECT null,'c'---这里加了一条数据,便于你看出结果
SELECT a,b,c=(CASE WHEN ISNULL(a,'')='' THEN null ELSE b END)--注个人喜欢用isnull()函数
FROM test
结果:
1 a a
2 b b
NULL c null
可以CASE WHEN A IS NULL THEN '' ELSE B END C
select case when A is null then null else B end as C from table
没明白你的意思?
给出完整的问题