a表
name id 无数个字段
-----------------------------
name1 1 .....
name2 2 .....
name3 3 .....b表
a_id f2 f3
----------------------------
1 1 ...
2 1 ...
1 1 ...
1 0 ...
2 0 ...
3 0 ...
找出b表中f2字段值为1的a_id对应到a表中所有属性既
id name 无数个字段
---------------------
1 name1 ....
2 name2 ....
我用的语句是select a.* from a inner join b on b.a_id=a.id where b.f2=1不过这样的话就会把name1的字段出现两次,用distinct吧,效率不好,用group by的话a表的字段太多了,一个一个写出来会死人的,怎么处理这种东西,困惑老长时间了,谢谢高手们。
(尽量不要用distinct)
name id 无数个字段
-----------------------------
name1 1 .....
name2 2 .....
name3 3 .....b表
a_id f2 f3
----------------------------
1 1 ...
2 1 ...
1 1 ...
1 0 ...
2 0 ...
3 0 ...
找出b表中f2字段值为1的a_id对应到a表中所有属性既
id name 无数个字段
---------------------
1 name1 ....
2 name2 ....
我用的语句是select a.* from a inner join b on b.a_id=a.id where b.f2=1不过这样的话就会把name1的字段出现两次,用distinct吧,效率不好,用group by的话a表的字段太多了,一个一个写出来会死人的,怎么处理这种东西,困惑老长时间了,谢谢高手们。
(尽量不要用distinct)
虽然你用了distinct,但是只要把里面的select改一下也能达到效果,问题解决了,谢谢select a.* from a inner join (SELECT F2 FROM B group by b.a_id) B on b.a_id=a.id where b.f2=1