sql – 如果field为null,则拉出某些字段;否则,拉其他领域

前端之家收集整理的这篇文章主要介绍了sql – 如果field为null,则拉出某些字段;否则,拉其他领域前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有下表:
TestTable  
  ColumnA  
  Column1  
  Column2  
  Column3  
  Column4

我想编写一个简单的sql语句来检查ColumnA,并根据它是否为null返回某些列.

像(伪)的东西:

If ColumnA Is Null
  SELECT ColumnA,Column1,Column2 
  FROM TestTable
Else
  SELECT ColumnA,Column3,Column4
  FROM TestTable

有任何想法吗?

解决方法

使用sql CASE表达式:
SELECT
    ColumnA,CASE WHEN ColumnA IS NULL THEN Column1 ELSE Column3 END AS ColumnB,CASE WHEN ColumnA IS NULL THEN Column2 ELSE Column4 END AS ColumnC
FROM
    TestTable

看到:
CASE (SQL-Server Transact-SQL)
CASE Expressions (Oracle)

猜你在找的MsSQL相关文章