怎么样查找同一姓名的数据?
表A
id name kemu
1 张龙 作文
2 张龙 数学
3 李四 作文
5 王五 作文
6 赵虎 数学
7 赵虎 口才
8 赵虎 珠心算
请问怎么用SQL语句查找出张三和赵虎
drop table A;<br /><br />create table A (<br /> id int,<br /> name varchar(10),<br /> kemu1 varchar(10)<br />) charset=gbk;<br /><br />set names gbk;<br /><br />insert into A values<br /> (1, '张龙', '珠心算'),<br /> (2, '张龙', '口才'),<br /> (3, '赵虎', '珠心算'),<br /> (4, '赵虎', '作文'),<br /> (5, '王朝', '数学'),<br /> (6, '王朝', '数学'),<br /> (7, '马汉', '绘画');<br /><br />select DISTINCT A.name<br /> from A,<br /> (select name, group_concat(kemu1 order by kemu1) as klist from A group by name HAVING count(DISTINCT kemu1)>1) B<br /> where find_in_set(A.kemu1, B.klist)
<br />SELECT name FROM t_xuanke<br />WHERE id in( SELECT id FROM t_xuanke GROUP BY name,kemu1 HAVING count(*)<=1 )<br />GROUP BY `name`<br />HAVING COUNT(*)>1<br />