我有一个脚本拉一列,一些单元格没有任何内容,所以它们返回了一个' dash'。我希望将这些替换为' Global'但是检索了所有其他结果。我不想在案例中指定每一个,因为它们可能会不时发生变化。
答案 0 :(得分:2)
也许是这样的事情?
SELECT CASE
WHEN MyColumn = '-' THEN 'Global'
ELSE MyColumn
END
FROM MyTable
答案 1 :(得分:0)
如果可以的话,请有一个查找表。像
这样的东西create table ConfigTable
(
pkConfigTable int identity(1, 1) not null primary key clustered,
ConfigKey varchar(100) not null,
ConfigValue varchar(100) not null
)
go
insert into ConfigTable
values('NothingString', '-')
go
declare @NullChar varchar(10)
go
select @NullChar = ConfigValue
from ConfigTable
where ConfigKey = 'NothingString'
go
select
case
when yourColumnToTest = @NullChar
then 'Global'
else yourColumnToTest
end
from yourTable
答案 2 :(得分:0)
一个简单的IF
可能会这样做:
SELECT
IF(Column = '-', 'Global', Column) AS NiceNameForColumn
FROM
Table
答案 3 :(得分:0)
SELECT COALESCE(NULLIF(a_column, '-'), 'Global') AS a_column_narrative
FROM YourTable;