Sql 分组查询的不同结果
我在MSAccess2007中运行了以下查询,并得到了预期的结果Sql 分组查询的不同结果,sql,ms-access-2007,Sql,Ms Access 2007,我在MSAccess2007中运行了以下查询,并得到了预期的结果 SELECT Col1 FROM tblA GROUP BY Col1 HAVING ((Count(Col1))>1); 但在将同一表中的其他列添加到分组后,如下所示。它给出0条记录 SELECT Col1, Col2 FROM tblA GROUP BY Col1, Col2 HAVING ((Count(Col1))>1); Col1 Col2 19570304 180243268 19
SELECT Col1
FROM tblA
GROUP BY Col1
HAVING ((Count(Col1))>1);
但在将同一表中的其他列添加到分组后,如下所示。它给出0条记录
SELECT Col1, Col2
FROM tblA
GROUP BY Col1, Col2
HAVING ((Count(Col1))>1);
Col1 Col2
19570304 180243268
19570304 180243269
19570304 180243270
26984406 422233864
26984951 796883002
26985060 594201758
19700070 150814697
19700070 430871349
19700070 670755019
19700070 883583086
19700070 963146318
19990910 715835415
19990910 715835416
19990910 799844489
20123527 957714629
20123527 957714630
22000508 376790722
26981961 637378887
这里有什么问题
谢谢我相信Col1和Col2中没有重复对请尝试以下方法:
SELECT t.Col1, t.Col2
FROM tblA t
inner join (
SELECT Col1
FROM tblA
GROUP BY Col1
HAVING ((Count(Col1))>1);
) tbl on tbl.col1=t.col1
谢谢你的回复。我的要求是,当只有Col1具有重复项时,获取Col2的对应值。怎么可能?添加到问题中的数据我已更改了答案,请尝试。这在MS Access中使用
内部联接运行。你能解释一下为什么我最初的查询没有成功吗work@ManthreePeiris尝试运行SELECT Col1,Col2,count(1)FROM tblA GROUP BY Col1,Col2
您将了解原因。如果您向我们提供示例数据和预期结果,将有助于了解您的问题