Flø*_*tti 2 mysql if-statement where-clause
如果在where语句中我试图获取datetime大于NOW()的所有行,但是如果type ='economy',我想限制它只显示datetime和NOW()之间的datediff是否更大超过14天.
就像是:
Select type,date(datetime) as date
from tbl1
where datetime > NOW()
IF(type = 'economy') && datediff(datetime,NOW()) > 14
order by datetime desc
我也曾尝试过案例,但无法弄清楚......
Jay*_*ymz 10
您可以将标准分为两种不同的比较:
select type,date(datetime) as date 
from tbl1 
where (datetime > NOW() AND type <> 'economy') OR
      (datediff(datetime, NOW()) > 14 AND type = 'economy')
order by datetime desc
(没有检查语法错误,但这个想法应该是正确的...)
| 归档时间: | 
 | 
| 查看次数: | 6508 次 | 
| 最近记录: |