フィールドにLIKE
を使用しているときにリクエストをしようとしましたが、エラーが発生しました。
私はEraquent(ORM)でLaravel 5.3を使用しています。PostgreSQLでエラーが発生しました
$date = Carbon::now();
foreach ($hours as $hour) {
$chart[$hour]['hour'] = $hour;
$chart[$hour]['allowed'] = VisitsAllowed::where('created_at', 'LIKE', Carbon::parse($date)->format('Y-m-d %'))->count();
$chart[$hour]['denied'] = VisitsDenied::where('created_at', 'LIKE', Carbon::parse($date)->format('Y-m-d %'))->count();
}
エラー:
SQLSTATE[42883]: Undefined function: 7 ERROR: operator does not exist: timestamp without time zone ~~* unknown
LINE 1: ... aggregate from "visits_allowed" where "created_at" LIKE $1
^
HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts. (SQL: select count(*) as aggregate from "visits_allowed" where "created_at" LIKE 2017-05-30 %)
誰かが解決策を見つけるために私を助けることができます。
$ dateの例を挙げることができますか? –
「LIKE」の代わりに「ILIKE」を試してみてください –
ILIKEもうまくいきません。 – Pixel