网站内容建设方案,wordpress 门户好的,深圳好的高端企业网站建设公司,网站找哪家做文章目录问题原因解决拓展问题
执行sql报#xff1a;无法绑定由多个部分组成的标识符
原因
取了别名却没用别名#xff0c;如下面这些情况
select * from biz_production_order_work_detail temp where biz_production_order_work_detail.create_time2023-02-13selec…
文章目录问题原因解决拓展问题
执行sql报无法绑定由多个部分组成的标识符
原因
取了别名却没用别名如下面这些情况
select * from biz_production_order_work_detail temp where biz_production_order_work_detail.create_time2023-02-13select biz_production_order_work_detail.create_time from biz_production_order_work_detail temp where temp.create_time2023-02-13上面是博主自己模拟测出来的网上也有其他情况联合查询确实一开始出问题的代码也有进行联合查询即文末代码
1、联合查询的条件有重复的未指定哪个表的字段信息 例 a表有idb表也有id select id from a left join b on a.idb.id 这时候查询条件的id没有标明是哪个表的id就会出现这个问题
2、查询条件时未指定联合查询的表查询条件就直接用另一个表的字段了 例可能在别的语言里面会有拼接sql的写法比如javajdbc方式sql语句是动态的 sql: select*from a 在此基础做sql语句的拼接 理想拼接后的sqlselect*from a left join b on a.idb.id where b.idxxx 实际拼接后的sql select*from a where b.idxxx 下面这情况就会造成这个错误所以做这种拼接sql的时候打印一下sql语句是否出现问题
解决
正确使用都用别名取数都用表名
--都用别名
select temp.create_time from biz_production_order_work_detail temp where temp.create_time2023-02-13
--都用表名
select biz_production_order_work_detail.create_time from biz_production_order_work_detail where biz_production_order_work_detail.create_time2023-02-13拓展
查询结果字段作为另一个查询语句的字段该查询语句里的相关表会受到外部查询条件的影响 select base_procedure_id, plan_qty,convert(date,work.modify_time) inittime,--括号里的这段会受到work.modify_time 2022-12-01 and work.modify_time 2022-12-07 的影响 ( select SUM(ok_qty) from biz_production_report, biz_production_order_work_detailwhere biz_production_report.order_work_detail_id biz_production_order_work_detail.idand biz_production_order_work_detail.production_order_work_id work.idand biz_production_report.report_date work.modify_time ) as actqty,prod_poodfrom biz_production_order_work work,biz_production_order orderswhere work.modify_time 2022-12-01 and work.modify_time 2022-12-07 and work.biz_production_order_idorders.id