为什么这种写法会出现笛卡尔积?明明已经加了left join xxx on xxx=xxx条件了啊

图片说明
图片说明
图片说明

已经解决了 连接条件两字段的字段类型不一致导致的

是不是你的表没有设置主键?

本来就会的,原因是左边的表无法知道匹配右边的那个数据,所以他会把所有数据都匹配出来,这个也不叫做笛卡尔积,你可以试试用join,然后不用on条件,那情况才叫做笛卡尔积。一般的表连接不会这么做,如果一个一对多的表,一般都是多的去连接少的,这时候你看起来是不是觉得就顺眼多了。