比如有a表跟b表,结构如下
a表
id name 
1 ccc
b表
id aid name
1 1 aaaa
2 1 fffffff
查询sql语句如下
select * from a right join b on a.id=b.aid;
那么问题来了,查询得到的结果是a表的数据因为b表的关系而导致重复出现。现在想要在sql语句上做处理,使查询出来的数据只有表a的一条,但表b中的数据又不能缺少,要怎么才能实现这种要求呢?
注意,是sql语句上做文章,不是其他地方。求大神指导,小弟感激不尽!

解决方案 »

  1.   

       建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
       参考一下这个贴子的提问方式http://bbs.csdn.net/topics/320211382
       
       1. 你的 create table xxx .. 语句
       2. 你的 insert into xxx ... 语句
       3. 结果是什么样,(并给以简单的算法描述)
       4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
       
       这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。
      

  2.   

    select a.id, group_concat(b.name) from a right join b on a.id=b.aid;
    group by a.id