1
FROM_UNIXTIMEを使用するYiiでクエリを実行しようとしています。次のコードは動作しません。FROM_UNIXTIME with YII
$model = Banner::model()->findAll(array(
'condition' => 't.banner_kategori=:parent AND t.status=:status AND (FROM_UNIXTIME(t.publish_date) <= :datetime AND FROM_UNIXTIME(t.unpublish_date) >= :datetime OR t.publish_date = "" AND t.unpublish_date = "" OR FROM_UNIXTIME(t.publish_date) <= :datetime AND t.unpublish_date = "") ORDER BY created DESC LIMIT 10',
'params' => array(':parent' => $parent, ':status' => 1, ':datetime' => date('Y-m-d H:i:s')),
));
しかし、私は、クエリのこのSQLのバージョンを実行すると、予想通り、私は結果を得る:
SELECT *, FROM_UNIXTIME(publish_date) AS wew
FROM banner
WHERE banner_kategori=1
AND status=1 AND (FROM_UNIXTIME(publish_date) <= CURDATE() AND FROM_UNIXTIME(unpublish_date) >= CURDATE() OR publish_date = '' AND unpublish_date = '' OR FROM_UNIXTIME(publish_date) <= CURDATE() AND unpublish_date = '')
ORDER BY created DESC LIMIT 10
は、どのように私は最初のクエリが仕事を得ることができますか?
これは、条件で条件を指定して制限しているため、「ORDER BY created DESC LIMIT 10」を削除してもうまくいきます。あなたは順序を指定してSAperateパラメータに制限するか、 'CDbCriteria'オブジェクトを使うことができます –