使用SQL对Access数据库列中的字符进行计数
我有下表
col1 col2 col3 col4==== ==== ==== ====
1233 4566 ABCD CDEF
1233 4566 ACD1 CDEF
1233 4566 D1AF CDEF
我需要计算col3中的字符,因此从上表中的数据中可以得出:
char count==== =====
A 3
B 1
C 2
D 3
F 1
1 2
仅使用SQL可以实现吗?
目前,我正在考虑将参数传递到SQL查询中,并依次计算字符数,然后求和,但是我还没有启动VBA部分,坦率地说,我不想这样做。
这是我目前的查询:
PARAMETERS X Long;SELECT First(Mid(TABLE.col3,X,1)) AS [col3 Field], Count(Mid(TABLE.col3,X,1)) AS Dcount
FROM TEST
GROUP BY Mid(TABLE.col3,X,1)
HAVING (((Count(Mid([TABLE].[col3],[X],1)))>=1));
非常感谢您提供想法和帮助,因为我通常不使用Access和SQL。
回答:
知道colum3的固定长度为4,这个问题就很容易了。
假设有一个视图V,该视图V包含四列,每列对应第3列中的一个字符。
V(c1, c2, c3, c4)
不幸的是,我不熟悉特定于Access的SQL,但这是您需要的常规SQL语句:
SELECT c, COUNT(*) FROM(
SELECT c1 AS c FROM V
UNION ALL
SELECT c2 FROM V
UNION ALL
SELECT c3 FROM V
UNION ALL
SELECT c4 FROM V
)
GROUP BY c
以上是 使用SQL对Access数据库列中的字符进行计数 的全部内容, 来源链接: utcz.com/qa/402316.html