Psephit Posted November 18 Share Posted November 18 Hallo ihr Lieben, ich versuche seit mittlerweile mehreren Tagen im SQL Manager (im Backend) eine Abfrage mit JOIN zu erstellen bekomme immer die Fehlermeldung "Falsche SQL-Abfrage". Alles was ich bisher im Netz recherchieren konnte, weisst darauf hin, dass es eigentlich kein Problem sein sollte. Ich bin mehr oder weniger Laie und kratze nur an der Oberfläche, also bitte verzeiht mir evtl. komische Rückfragen oder unzureichende Informationsgabe. tynw_ ist das Prefix meiner Tabellen. Abfragen auf einzelne Tabellen funktioniert wunderbar. Nur sobald ich versuche die Funktion JOIN zu nutzen kommt die Fehlermeldung. Habe ich irgendeinen Fehler in der Syntax? select tynw_orders.*, tynw_order_detail.* From tynw_orders left join tynw_order_detail ON tynw_orders.id_orders = tynw_order_detail.id_orders ORDER BY id_order DESC LIMIT 10 Ich arbeite mit PS 8.1.6 und einer MariaDB 10.6.15 vielen Dank schon mal im voraus für Eure Unterstützung. Link to comment Share on other sites More sharing options...
JBW Posted November 19 Share Posted November 19 In deinen Screenshot fehlen die * beim SELECT - über die Abfrage am besten erstmal on phpmyadmin, da bekommst du mehr feedback Link to comment Share on other sites More sharing options...
Psephit Posted November 19 Author Share Posted November 19 Hi, danke für die schnelle Rückmeldung. ja, der Screenshot ist fehlerhaft. Habe ich leider erst jetzt gesehen. Die Query selbst war mit den *, bzw. ich hatte es auch mit definierten Feldern versucht. habe in phpMyAdmin zwischenzeitlich folgende Query getestet, die exakt das gewünschte Ergebnis liefert. Denke also, dass ich die (Basic) Syntax von SQL verstanden habe. SELECT mid(product_name,38,7) AS Konzerttag, SUM(product_quantity) AS Menge FROM tynw_order_detail left join tynw_orders ON tynw_order_detail.id_order = tynw_orders.id_order WHERE tynw_order_detail.product_attribute_id in ('1','2','3','4','5','6') AND tynw_order_detail.product_name LIKE '%eTicket%' AND tynw_orders.current_state IN ('17', '19', '4','2') GROUP BY Konzerttag ORDER BY tynw_order_detail.id_order DESC Die Selbe Query in PS gibt den Fehler wie im Hauptpost beschrieben. Link to comment Share on other sites More sharing options...
JBW Posted November 19 Share Posted November 19 Schau die mal die genaue Fehlermeldung im Error log oder bei aktivierten Debug Modus an. Hatte das Szenario kürzlich bei einem Kunden mit dem Fehler "count on string" - das scheint mir ein Bug mit PHP8 zu sein den ich durch einen Override behoben habe. Link to comment Share on other sites More sharing options...
JBW Posted November 19 Share Posted November 19 Lösung für count on string siehe hier https://github.com/PrestaShop/PrestaShop/commit/fe8361a0a08e78ef0cab73b08b6fb19186afa101 Link to comment Share on other sites More sharing options...
Psephit Posted November 19 Author Share Posted November 19 Hi @JBW Danke für Deine Antwort. Allerdings muss ich gestehen, dass das mein aktuelles Wissen übersteigt. Wie man an die Error Logs kommt weiss ich nicht und ein Override projiziert Fragezeichen in meinem Kopf 😉 Ist nicht böse gemeint und ich schätze Dein Bemühen. Allerdings schließe ich daraus, dass 1. ich nicht zu doof bin eine einfach SQL Abfrage zu erstellen 2. Das Problem eher bei der PHP Version liegt und ich 2.1. Nicht in der Lage bin das selbst zu lösen. Dann hoffe ich, dass es irgendwann mal ein Patch/Update dafür gibt und ich dann erfolgreich sein werde. Danke, Nic PS: ich hatte eigentlich gehofft, dass ich das Problem bin, dann wäre eine Lösung aussichtsreicher gewesen 😉 Link to comment Share on other sites More sharing options...
JBW Posted November 19 Share Posted November 19 Debug modus zum Anzeigen der Fehler kann unter Erweiterte Einstellungen -> Leistung aktiviert werden. Override brauchst du nicht zwingend, du kannst die Änderung aus dem Link auch direkt in der Core-Datei machen (in diesem Fall ok, da gefixter Bug) - offiziell geht das erst mit PS9 live. Also in Datei /classes/RequestSQL.php in Zeile 325 die beiden eckigen Klammern hinzufügen. Link to comment Share on other sites More sharing options...
Psephit Posted November 19 Author Share Posted November 19 Danke für die Beginner-friendly Anleitung. die RequestSql.php habe ich entsprechend geändert und per ftp hochgeladen. Hat aber leider nicht den gewünschten Effekt gebracht. Fehlermeldung kommt weiterhin. Debug ist aktiviert, mir wird jetzt unten auf der Seite etwas angezeigt (Infoleiste). Wenn ich da klicke komme ich in den "Symfony Profiler". Das sind allerdings böhmische Dörfer für mich. Habe mich da mal bisschen durchgewühlt aber für mich nichts aussagekräftiges entdeckt. Gibt es da gezielt eine Info die verwertbar ist? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now