Mysql
 sql >> база данни >  >> RDS >> Mysql

как да накарате Doctrine_Expression (доктрина 1.2) да се опита да получи последните 7 дни

Причината, поради която не връща нищо, е, че 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);

Това обаче не е най-безопасният вариант, тъй като въвеждането не се екранира и не е добра практика...




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Кой е най-добрият тип данни за телефонен номер в MySQL и какво трябва да бъде съпоставянето на Java тип за него?

  2. Разделете данните на 3 колони

  3. Показва се � вместо £

  4. Проблем с DataColumn MaxLength с MySql.Data.MySqlClient.MySqlCommand.ExecuteReader

  5. Php - MySQL избира данни от таблица, след което актуализира същата таблица