ホームページ >バックエンド開発 >PHPチュートリアル >同じ名前のデータを検索する方法
同じ名前のデータを見つけるには?
テーブル A
id 名 kemu
1 張龍作文
2 張龍数学
3 李四作文
5 王武作文
6 趙胡の数学
7 趙胡 雄弁でも....>
259d170191bd32b80a75a1db1354d814 Duoke
f2e2131d3e87e0024feed2d5da203680
82c0184ed11658e62275fd251b65909d
上の検索をクリックすると次のように表示されます:
1 Zhang Long
2 Zhao Hu
------解決策---------- ----------------------
名前 張龍 趙胡
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 />