Wie kann ich diese Art der Abfrage in Laravel laufen 5,4Benutzerdefinierte Abfragen in Laravel 5
select items.id,items.name,total,region from items LEFT OUTER JOIN
(select purchases.region_id as region , sum(purchases_detail.quantity)
as total,purchases_detail.item_id
from purchases_detail
left join purchases on(purchases.id=purchases_detail.purchase_id)
GROUP BY purchases_detail.item_id) pd on (pd.item_id=items.id)
, wenn ich das in DB versucht ('') :: wählen es gab mir eine Fehlermeldung:
SQLSTATE [42000]: Syntaxfehler oder Zugriffsverletzung: 1055 'amsdb.purchases.region_id' ist nicht in GROUP BY (SQL: Wählen Sie items.id, items.name, insgesamt, Region von Elementen LEFT OUTER JOIN (wählen Sie käufe.region_id als region, summe (käufe_detail.menge) als gesamt, einkäufe_detail.item_id f rom purchases_detail LEFT JOIN Einkäufe auf (purchases.id = purchases_detail.purchase_id) GROUP BY purchases_detail.item_id) pd auf (pd.item_id = items.id))
aber es funktioniert gut, wenn ich es Phpmyadmin laufen
Sie sollten in Laravel strikt abschalten und alles wird funktionieren, wie es sollte. Wechseln Sie zu 'config/database.php' und ändern Sie im mysql Konfigurationsarray' strict => true' in 'strict => false'; – Maraboc
@Maraboc Schlechte Ratschläge, er sollte seine Abfrage korrigieren. –
@TimBiegeleisen Ithink auch wenn er die Abfrage repariert sollte er den strikten Modus updaten! – Maraboc