php – 您的SQL语法有错误;检查手册
发布时间:2020-12-13 22:06:03 所属栏目:PHP教程 来源:网络整理
导读:您的SQL语法有错误;检查与 MySQL服务器版本对应的手册,以便在第4行的“WHERE j.id_customer = 1”附近使用正确的语法 SELECT j.`id_customer`,j.`id_order`,m.`id_shop` FROM `ps_orders` j LEFT JOIN `ps_order_detail` m WHERE j.`id_customer` = 1 这是从
您的SQL语法有错误;检查与
MySQL服务器版本对应的手册,以便在第4行的“WHERE j.id_customer = 1”附近使用正确的语法
SELECT j.`id_customer`,j.`id_order`,m.`id_shop` FROM `ps_orders` j LEFT JOIN `ps_order_detail` m WHERE j.`id_customer` = 1 这是从prestashop php中的原始代码生成的,如果打开详细的错误纠正——- foreach ($result as $key) { $customer_id_is = 1; $product_id_is = 5; $result2 = Db::getInstance()->executeS( 'SELECT j.`id_customer`,m.`id_shop` FROM `'._DB_PREFIX_.'orders` j LEFT JOIN `'._DB_PREFIX_.'order_detail` m WHERE j.`id_customer` = '.$customer_id_is.' '); } 解决方法
您缺少
JOIN中的ON子句
SELECT j.id_customer,j.id_order,m.id_shop FROM ps_orders j LEFT JOIN ps_order_detail m ON m.SomeField = j.SomeField <-- HERE WHERE j.id_customer = 1 如果您要加入表格,则需要在字段上链接它们.否则,您正在执行交叉连接. MySQL Docs状态:
这样可行: SELECT j.id_customer,m.id_shop FROM ps_orders j JOIN ps_order_detail m WHERE j.id_customer = 1 就像这样: SELECT j.id_customer,m.id_shop FROM ps_orders j INNER JOIN ps_order_detail m WHERE j.id_customer = 1 但它对OUTER JOIN不起作用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |