sql >> Databasteknik >  >> RDS >> Mysql

hur får man Doctrine_Expression ( doktrin 1.2 ) att försöka få de senaste 7 dagarna

Anledningen till att den inte returnerar något är för att Doctrine undkommer uttrycket - den genererade SQL är

WHERE (date > 'DATE_SUB(CURDATE(), INTERVAL 7 DAY)')

snarare än

WHERE (l.action_time > DATE_SUB(CURDATE(), INTERVAL 7 DAY))

Du kan tvinga den att fungera så här:

$date = new Doctrine_Expression('DATE_SUB(CURDATE() , INTERVAL 7 DAY)');
$q->where('date > ' . $date);

Detta är dock inte det säkraste alternativet, eftersom inmatningen inte kommer undan och inte är bra praxis...




  1. SQL Server - brist på NATURAL JOIN / x JOIN y USING(fält)

  2. Skapa en mysql-tabell med en PHP-variabel

  3. refererar främmande nyckel alltid till en unik nyckel i en annan tabell?

  4. Fel vid överföring av databas från MySql till Postgres med mysql2pgsql