[英]SQL Copied query from MS Access
我正在尝试在 SQL 中重新创建 MS Access 查询,以下是转换为在 SQL 中运行的 Access 查询
SELECT Column1
,Column2
,Column3
,Count('x') AS CountX
FROM [SchmaName].[SQLView]
WHERE ("SomeWhereStatement")
GROUP BY Column1, Column2, Column3
HAVING Count('x')>1;
我感到困惑的是
,Count('x') AS CountX
和
HAVING Count('x')>1;
X 不是来自已创建的 SQLView,当我运行上面的代码时,它将返回一个记录,其中第 1 - 3 列为空,而 CountX 列为 12896。我期望这个返回总共大约 4285 条记录,我怀疑我不是的原因与这个伯爵有关。 关于这个计数实际上在做什么的任何建议?
当您在COUNT()
传递任何常量参数(即“x”是常量参数)时,它将返回记录总数:
因此,对于您的查询,它将返回基于使用GROUP BY
子句定义的列的记录。
SELECT Column1, Column2, Column3, Count('x') AS CountX
FROM [SchmaName].[SQLView]
WHERE ("SomeWhereStatement")
GROUP BY Column1, Column2, Column3
HAVING Count('x') > 1;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.