一个表中查询的问题?
A表 id1 姓名 地址 ....B表 id2 证件 分类 ....
id1与id2是关连的
现在要查:A表中,姓名具有相同值的(count(同一姓名)>=2)
B表中,分类具有相同值的(count(同一分类)>=2)
并且id1=id2
的所有id1(或者说id2)
[[it] 本帖最后由 飙马 于 2008-4-27 10:38 编辑 [/it]]
select id1 from A,B where A.姓名=B.姓名 and A.分类=B.分类 不是这个意思,前面表述得不够清楚,我重新编辑了一下,你再看看。 Create Table #A (id1 int,姓名 varchar(10),地址 varchar(10))
Create Table #B (id2 int,证件 varchar(10),分类 varchar(10))
INSERT INTO #A Values(1,'张三','测试')
INSERT INTO #A Values(1,'张三','测试')
INSERT INTO #A Values(2,'李四','测试')
--SELECT * FROM #A
INSERT INTO #B Values(1,'身份证','测试')
INSERT INTO #B Values(1,'身份证','测试')
INSERT INTO #B Values(2,'身份证','测试2')
--SELECT * FROM #B
SELECT id1,姓名,分类 FROM #A INNER JOIN #B ON #A.id1=#B.id2 GROUP BY id1,姓名,分类 Having Count(*)>=2
DROP TABLE #A
DROP TABLE #B select distinct id1 from A,B --或select distinct id2--
where id1=id2 and id1 in (
select id1 from A group by id1 having count(姓名)>=2)
and id2 in (
select id2 from B group by id2 having count(分类)>=2) 不知道A表和B表的主键是什么啊
页:
[1]
