+ -
当前位置:首页 → 问答吧 → mysql left join 问题

mysql left join 问题

时间:2010-07-02

来源:互联网

select * from db_a as A left join db_b as B ON A.name=b.sname    // 这一句可以查出两个表name值有相同的记录.

select * from db_a as A left join db_b as B ON A.name=b.sname  WHERE A.id = '';        // 为什么我加这一句后, 然后可以查出两个表name值有相同的记录.

A.id = ''  条件肯定不成立.

作者: spser   发布时间: 2010-07-02



我觉得你应当把二张表的表结构发一下,这样大家更知道是怎么回事。
还有 select * 这里面的*,我觉得你应当注明一下,如果不注明就是二
张表的所有字段

作者: fymm   发布时间: 2010-07-02

语句有错误,不然出不来值的。你确定一下where语句是否判断正确

作者: dct2010   发布时间: 2010-07-02

db_a
Id      name
1         a
2         b
3         b
4         c

db_a
Id      sname
1         a
2         b
3         b
4         b

select * from db_a as A left join db_b as B ON A.name=b.sname  WHERE A.id = '';
这一句本来应该查不到任何值才对, 可事实上却出来了5条.就是b=b成立了.

作者: spser   发布时间: 2010-07-02

你的db_b表在哪里? 怎么字段名一个大写,一个小写?

作者: 一条尸体   发布时间: 2010-07-04

*nix下注意大小写问题

作者: cfanbo   发布时间: 2010-07-25