Mam taki problem mam skonstruowane zapytanie i to zapytanie mi w zwykłym DB działa poprawnie natomiast w modelu już nie i w modelu zwyczalnie zwraca błąd sql, może ja czegoś nie dowidzę.
DB::select
$rekord = DB::select("SELECT ( DATE(IF(HOUR(usees.DATE) >= $start, usees.DATE,Date_add(usees.DATE, INTERVAL - 1 DAY) )) ) "
. "AS dat, usees.id_users, SUM(usees.portion) AS portion,date FROM usees where id_products = '1' and date <= '$date' and id_users = '$id_users' GROUP BY dat ORDER BY dat desc");
Model
$list = $Use->selectRaw("DATE(IF(HOUR(usees.date) >= '$start' usees.DATE,Date_add(usees.date, INTERVAL - 1 DAY))) as DAT" )
->selectRaw("SUM(usees.portion) AS portion")
->wherein("usees.id_products",$arrayId)
->where("usees.date","<=",$date)
->where("usees.id_users",Auth::User()->id)
->groupBy("DAT")
->orderBy("DAT","DESC")->get();
Zwraca mi taki błąd
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'usees.DATE,Date_add(usees.date, INTERVAL - 1 DAY))) as DAT, SUM(usees.portion) A' at line 1 (SQL: select DATE(IF(HOUR(usees.date) >= '5' usees.DATE,Date_add(usees.date, INTERVAL - 1 DAY))) as DAT, SUM(usees.portion) AS portion from `usees` where `usees`.`id_products` in (1, 3, 11, 16, 17, 18) and `usees`.`date` <= 2019-01-30 20:50:17 and `usees`.`id_users` = 1 group by `DAT` order by `DAT` desc)