仅在满足条件时显示列值| MySQL的

时间:2020-01-16 19:05:27

标签: mysql

我在名为Column1的表中有一个名为Date_Column1Date_Column2Example1的列:

如果Column1说“是”,Date_Column1可以显示其值,但是Date_Column2应该不显示任何内容

如果Column1说“也许”,Date_Column2应该显示其值,但是Date_Column1应该什么都不显示

如何编写这种条件。 SELECT查询中应该使用大小写吗?

Expected Results

2 个答案:

答案 0 :(得分:0)

使用IF

SELECT IF(Column1 = "Yes", Date_Column1, "") AS Date_Column1,
       IF(Column1 = "Maybe", Date_Column2, "") AS Date_Column2, 
FROM sometable;

答案 1 :(得分:0)

您可以使用UNION ALL对每种情况进行2个查询:

select Column1, Date_Column1, null Date_Column2
from tablename
where Column1 = 'Yes'
union all
select Column1, null, Date_Column2
from tablename
where Column1 = 'Maybe'
相关问题