我有下表
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