Может кто-нибудь помочь мне, как преобразовать запрос SQL в Larvel 5.2
Первый запрос (за текущий месяц)
SELECT
*
FROM
customer_allocations
WHERE
YEAR(date) = YEAR(NOW()) AND MONTH(date) = MONTH(NOW());
Второй запрос (за текущую неделю)
SELECT
*
FROM
customer_allocations
WHERE
WEEKOFYEAR(date) = WEEKOFYEAR(NOW());
Третий запрос (за текущий день)
SELECT
*
FROM
customer_allocations
WHERE
YEAR(date) = YEAR(NOW()) AND
MONTH(date) = MONTH(NOW()) AND
DAY(date) = DAY(NOW());
Эти SQL-запросы успешно выполняются в phpmyadmin, но я хочу реализовать их в laravel, может кто-нибудь мне помочь.
Я пытался преобразовать эти запросы, но я получаю сообщение об ошибке в этой строке кода:
CustomerAllocation::where([YEAR('date'),'=',YEAR(NOW()),MONTH('date'),'=',
MONTH(NOW())])->get();
Это ошибка:
Вызов неопределенной функции «App \ Http \ Controllers \ YEAR ()»
+ Изменить
CustomerAllocation::where([YEAR('date'),'=',YEAR(NOW()),MONTH('date'),'=',MONTH(NOW())])->get()
в
CustomerAllocation::whereRaw("YEAR(date) = YEAR(NOW())")->whereRaw("MONTH(date) = MONTH(NOW())")->get()
использование whereRaw()
где вы хотите поставить проверить пользовательские условия, как вы хотите сделать.
Других решений пока нет …