显示字段取决于其他字段是否包含数据

时间:2011-10-12 06:49:48

标签: sql

如果另一个字段有数据,是否可以在SQL查询中仅显示字段?例如,如果Field1<> '',然后在Field2中显示值,否则不显示值?

4 个答案:

答案 0 :(得分:2)

可以使用case statement完成。 (至少在SQL Server中)

select case when Field1 <> '' 
            then Field2  
       end as Field2
from YourTable

答案 1 :(得分:0)

当然(这适用于Oracle和SQLite):

select 
  field1,
  (case 
     when field1 is null then null
     else field2
   end) field2_wrapped
from my_table

答案 2 :(得分:0)

如果'没有数据'表示空字符串(''),则需要使用以下语句:

SELECT Filed2 FROM Table1 WHERE Filed1<>''

如果'无数据'表示NULL值,则需要使用

SELECT Filed2 FROM Table1 WHERE NOT (Filed2 IS NULL)

答案 3 :(得分:0)

查看标准SQL函数COALESCE()NULLIF()

COALESCE(NULLIF(Field1, ''), Field2)