如果我直接在phpmyadmin
运行下面的查询,我得到了想要的结果DATE(柱)过滤器没有返回
select * from trips where route_from = 'CityA' and route_to = 'CityB' and DATE(start_date) = '2015-04-07'
但是,如果我运行它作为PHP代码,它返回一个空的结果
Trip::whereRouteFrom('CityA')
->whereRouteTo('CityB')
->where(\DB::raw('DATE(start_date)', '=', '2015-04-07'))->get();
的ORM执行的SQL代码是(我得到它通过->toSql()
)以下:
select * from `trips` where `route_from` = ? and `route_to` = ? and DATE(start_date) is null
现在,我想这个问题在DATE(...) is ...
。当我在phpmyadmin中运行is
的SQL代码时,它会给我语法错误。与=
工作正常。但是框架使用is
生成它,所以我不确定这是问题还是有其他问题。
我的问题是一个错字(正如接受的答案所暗示的),但我真的很喜欢你的解决方案! :) – Milkncookiez 2015-04-06 13:35:03
我很高兴它有帮助。 :) – mininoz 2015-04-06 13:36:23