php – 您的SQL语法有错误;检查手册

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 您的SQL语法有错误;检查手册脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
您的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不起作用.

脚本宝典总结

以上是脚本宝典为你收集整理的php – 您的SQL语法有错误;检查手册全部内容,希望文章能够帮你解决php – 您的SQL语法有错误;检查手册所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。