带有if语句的SQL查询

时间:2014-03-31 03:05:38

标签: sql database

我有一个包含`department`列的表(允许为null)但是当我选择该表并且该字段为null时,我不希望它显示Null而是“ - ”。

我被告知将if语句放在select语句中,但我无法理解。我怎么能这样做?

4 个答案:

答案 0 :(得分:3)

您想使用函数coalesce()

select coalesce(department, '-')
from table t

这是大多数数据库中可用的ANSI标准函数。

答案 1 :(得分:2)

您可以使用两种方法:

1。使用CASE

SELECT CASE WHEN department IS NULL 
            THEN '-' 
            ELSE department 
            END AS department FROM TableName

CASE计算条件列表并返回多个可能的结果表达式之一。阅读更多here

2。使用COALESCE

SELECT COALESCE (department,'-') FROM TableName

COALESCE返回非空的第一个参数。阅读更多here

答案 2 :(得分:1)

You can use following code:

select ISNULL(department, '-') AS DEPARTM
from dbo.tbl_Department

答案 3 :(得分:1)

你需要使用' CASE WHEN'您的选择查询中的语句。像这样:

SELECT CASE WHEN Department IS NULL THEN Department = '-'
END AS DEPARTMENT
FROM Table_Name