1

クエリを変換する方法が少し混乱しています:

> SELECT COUNT(`id`) AS `total_logs`, `userlog`.* FROM `user_log` AS
> `userlog` WHERE `user_id` = '31' AND date(`date_created`) =
> '2012-04-30'

Kohana 3.1 ORM に? 現在使用しています:

> $isLoged = ORM::factory('Userlog')->select(array('COUNT("id")',
> 'total_logs'))
>                 ->where('user_id', '=', $user->id)
>                 ->and_where('Date(date_created)', '=',  date('Y-m-d'))
>                 ->find_all();

残念ながら、上記のものはエラーを出しています:(

Database_Exception [ 1054 ]: 不明な列 'Date(date_created)' が 'where cl....

4

1 に答える 1

3

'Date(date_created)'string は、最初に に渡さない限り、エスケープされて列名として扱われますDB::expr()。したがって、代わりに'Date(date_created)'次のことを試してください。

DB::expr('Date(date_created)')

のドキュメントをDB::expr()参照してください。

于 2012-04-30T07:57:04.323 に答える