mysqlleft join on locate 只能查询到一行满足条件 where in ,如何查找到多行

mac2024-03-09  27

如下使用 + 号,字符串拼接,将只可以查找到一行

SELECT * FROM pur_order A right JOIN pur_supplier B ON LOCATE(','+B.id+',', ','+A.supplier_ids+',')>0 where B.id =3

 

正确的写法应该如下:

SELECT * FROM pur_order A

right join pur_email B on LOCATE(concat(',',B.id,','),concat( ',',A.supplier_ids,','))>0

WHERE B.ID = 3

 

最新回复(0)