晚上好,
我使用的是LEFT JOIN查询atable和BTABLE,但是当我运行查询,我回去每个结果的两倍。(仅当我有重复的时候)
我的查询如下:
$sql="
SELECT *
FROM atable A
LEFT JOIN btable B ON (A.article_number = B.article_number)
WHERE A.article_number2 = B.article_number2
";
一张桌子
Name id name article_number article_number2
Row1 1 Mercedes M1 M2
桌子
Name id name article_number article_number2
Row1 1 Mercedes M1 M2
Row2 2 Mercedes M1 M2
一点我应该得到以下结果:
奔驰:1x
奔驰:1x
我得到这个:
奔驰:1x
奔驰:1x
奔驰:1x
奔驰:1x
我想念什么吗?
任何帮助将不胜感激。提前致谢。
您的SQL最正确,您只需要在SQL查询中添加GROUP BY即可。
SELECT *
FROM atable as A
LEFT JOIN btable as B ON (A.article_number = B.article_number)
WHERE A.article_number2 = B.article_number2
GROUP BY A.id
这里A.id是你的表的primary_key atable。
希望这对你有用:)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句