我希望基于if else条件输出SQL语句。
对于Ex:
select salary from EMP
EMP表有一个DOJ列。
现在我希望输出为' - ',如果DOJ少于90天。
我该怎么做?
答案 0 :(得分:2)
在sql-server
中 select *,case when DATEDIFF(DAY,DOJ,getdate()) <=90 then '-' else null end as mytest
from tbale
答案 1 :(得分:1)
SELECT CASE WHEN (DATEDIFF(DAY,DOJ,getdate()) < 90) then '-' else cast(Salary as varchar(15)) end as Salary
FROM EMP
答案 2 :(得分:0)
对于大多数数据库服务器,您应该使用CASE,但MySQL提供了一个快捷方式:
SELECT IF(DOJ<90, '-', salary) FROM EMP;
答案 3 :(得分:0)
select IIF ( DOJ < 90 , '-', salary ) as FormattedSalary
from EMP