我的桌子:table1身份证名称家庭1 A AA2 B BB3 A AB4天5 E EE6 A ACAccess上的SQL命令:select count(*) from table1输出: ------------>正确的6行我试图计算唯一名称:预期输出: 4行select count(distinct Name) from table1访问时输出: ------------>错误我需要对查询进行哪些更改?
3 回答
慕村9548890
TA贡献1884条经验 获得超4个赞
Access-Engine不支持
SELECT count(DISTINCT....) FROM ...
您必须这样做:
SELECT count(*)
FROM
(SELECT DISTINCT Name FROM table1)
有点解决方法...您正在计算一个DISTINCT选择。
弑天下
TA贡献1818条经验 获得超8个赞
我可以使用的一个快速技巧是使用查找重复查询SQL并在Haveing表达式中将1更改为0。像这样:
SELECT COUNT([UniqueField]) AS DistinctCNT FROM
(
SELECT First([FieldName]) AS [UniqueField]
FROM TableName
GROUP BY [FieldName]
HAVING (((Count([FieldName]))>0))
);
希望这会有所帮助,而不是我确定的最佳方法,Access应该已经内置了它。
- 3 回答
- 0 关注
- 740 浏览
添加回答
举报
0/150
提交
取消