У меня есть команда:Yii CDbCommand возвращает значение, отличное клиентов MySQL
$night_command = Yii::app()->db->createCommand()
->select('COUNT(d1.id)')
->from('diary1 as d1')
->where('d1.deleted = 0 AND TIME(d1.datetime_created) BETWEEN "04:59:00" AND "17:59:00"');
$night_command->getText(); // this is query that i copy to client app
$night_command->queryScalar(); // returns 4
$night_command->getText()
возвращает запрос:
SELECT COUNT(d1.id)
FROM `diary1` `d1`
WHERE d1.deleted = 0 AND TIME(d1.datetime_created) BETWEEN "04:59:00" AND "17:59:00"
Когда я скопировать и запустить этот запрос - я получаю 25 (а не 4). Зачем? Похоже, что это проблема со временем сравнения, потому что без него все работает хорошо. Столбец datetime_created
имеет тип DATETIME.
Какая ошибка? Результат yii? Не могли бы вы использовать кеширование запросов на компоненте db до вашего кода? – georaldc