我有一个php查询
$query = "SELECT * FROM lbs_trace_etrack WHERE lbs_client='$slcustom1' AND MONTH (lbs_date) = MONTH (NOW())";它从SQL中拉取或假设拉取当月的信息,这样做的同时也拉取了上一年的信息。如何将此查询更改为仅获取当月当前年度的信息?
发布于 2015-03-18 03:55:51
您还需要将以下内容添加到WHERE子句中:
YEAR(lbs_date) to YEAR(NOW())您的查询现在要求的是:在3月份为这个具有lbs_date的客户端提供行。相反,您想要的是:在今年3月为这个具有lbs_date的客户端提供行。
发布于 2015-03-18 03:54:12
添加and YEAR(lbs_date)=YEAR(NOW());
发布于 2015-03-18 04:01:40
我不知道您使用的是哪种数据库引擎,因此您需要将示例(它也未经过测试,但您明白了这一点)转换为相关的,但您只需要给它一个更好的比较日期
$query = "SELECT * FROM lbs_trace_etrack WHERE lbs_client='$slcustom1' AND lbs_date <= dateadd(month,1,NOW())";或者,如果您想返回小于月底的日期,您可以使用
$query = "SELECT * FROM lbs_trace_etrack WHERE lbs_client='$slcustom1' AND lbs_date <= dateadd(month,1,dateadd(day,day(NOW()) * -1,now())";https://stackoverflow.com/questions/29108351
复制相似问题