[英]How can I use calculated fields in a WHERE clause with MySQL?
我有这样的查询:
SELECT client_id,name, last_name, email, date_arrival,
DATE_SUB(now(),INTERVAL 6 DAY) as date6before FROM clients WHERE agent_id = 4
and date_arrival > date6before
我怎样才能做到这一点?
您可以再次计算 where 中的值:
SELECT client_id,name, last_name, email, date_arrival,
DATE_SUB(now(),INTERVAL 6 DAY) as date6before FROM clients WHERE agent_id = 4
and date_arrival > DATE_SUB(now(),INTERVAL 6 DAY)
或使用having
子句
SELECT client_id,name, last_name, email, date_arrival,
DATE_SUB(now(),INTERVAL 6 DAY) as date6before FROM clients WHERE agent_id = 4
having date_arrival > date6before
尝试这个:
SELECT temp.* FROM (SELECT client_id,name, last_name, email, date_arrival, DATE_SUB(now(),INTERVAL 6 DAY) as date6before FROM clients WHERE agent_id = 4 ) as temp WHERE temp.date_arrival > date6before
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.