我的表:table1
ID 姓名 家庭 1 个 AA 2 B BB 3 A AB 4 天 5 EE 6 A 交流电
Access 上的 SQL 命令:
select count(*) from table1
输出: ------------> 真
6 行
我试图计算唯一名称:
预期输出: 4 行
select count(distinct Name) from table1
访问输出: ------------> 错误
我需要对查询进行哪些更改?
访问引擎不支持
SELECT count(DISTINCT....) FROM ...
你必须这样做:
SELECT count(*)
FROM
(SELECT DISTINCT Name FROM table1)
它的一个小解决方法......你正在计算一个 DISTINCT 选择。
对我来说使用的一个快速技巧是使用查找重复查询 SQL 并在Having 表达式中将 1 更改为 0。像这样:
SELECT COUNT([UniqueField]) AS DistinctCNT FROM
(
SELECT First([FieldName]) AS [UniqueField]
FROM TableName
GROUP BY [FieldName]
HAVING (((Count([FieldName]))>0))
);
希望这会有所帮助,而不是我确定的最佳方式,并且 Access 应该已经内置了它。