Преобразовать SQL-запрос в Laravel 5.2?

Может кто-нибудь помочь мне, как преобразовать запрос 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 ()»

0

Решение

+ Изменить

CustomerAllocation::where([YEAR('date'),'=',YEAR(NOW()),MONTH('date'),'=',MONTH(NOW())])->get()

в

CustomerAllocation::whereRaw("YEAR(date) = YEAR(NOW())")->whereRaw("MONTH(date) = MONTH(NOW())")->get()

использование whereRaw()где вы хотите поставить проверить пользовательские условия, как вы хотите сделать.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector