我尝试用原则 1.2 进行这个查询:
$q->where('date > ?',
new Doctrine_Expression('DATE_SUB(CURDATE() , INTERVAL 7 DAY)'));
但它没有给我返回任何结果。
任何想法 ?
thanks
它不返回任何内容的原因是因为 Doctrine 转义了表达式 - 生成的 SQL 是
WHERE (date > 'DATE_SUB(CURDATE(), INTERVAL 7 DAY)')
而不是
WHERE (l.action_time > DATE_SUB(CURDATE(), INTERVAL 7 DAY))
你可以强制它像这样工作:
$date = new Doctrine_Expression('DATE_SUB(CURDATE() , INTERVAL 7 DAY)');
$q->where('date > ' . $date);
然而,这不是最安全的选择,因为输入不会被转义并且不是好的做法......
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)