ms-access - 如何以 Ms.Access 查询为条件选择 COUNT(DISTINCT) 和 WHERE
问题描述
我只是想简单地使用 where 条件来计算,但是这个查询要求我提供参数而不是自动执行查询
SELECT COUNT(ActDiscDischargingPort) from(
SELECT DISTINCT ActDiscDischargingPort FROM SelisihLoadVSActualLoadTable) WHERE SchLoadVessel LIKE "XB24 - MV. MEMPHIS" AND SchLoadVoyageNo LIKE "0019";
编写此查询的正确方法是什么?
找到答案,原来查询必须是这样的
SELECT COUNT(ActDiscDischargingPort) from ( SELECT DISTINCT ActDiscDischargingPort FROM SelisihLoadVSActualLoadTable WHERE SchLoadVoyageNo LIKE "XB24 - MV. MEMPHIS" AND SchLoadVessel LIKE "0019" )
解决方案
每个派生表都必须有自己的别名。正确的语法是
SELECT
COUNT(ActDiscDischargingPort)
from(
SELECT
DISTINCT ActDiscDischargingPort
FROM
SelisihLoadVSActualLoadTable
) AS T
WHERE
SchLoadVessel LIKE "XB24 - MV. MEMPHIS"
AND SchLoadVoyageNo LIKE "0019";
您可以通过稍微优化查询来进一步加快查询速度。
推荐阅读
- html - 角度进度条不会随着值的变化而移动
- java - 如何计算 Http Post 请求的请求正文的 Content-Length
- node.js - 如何在 windows 10 中安装 ember-cli 版本 1.13.11
- r - 如何根据R中之前的列删除特定值
- javascript - 使用 commonmark 提取第一个 p 标签和第一个 h1 标签
- python - Discord.py 请求无法阻止 webhook 中的 ping
- smali - 如何防止检测到假GPS?
- reactjs - API 未从前端接收到后端
- amazon-web-services - Sagemaker Endpoint 返回奇怪的错误
- python - Python Pandas - 电子邮件列的值带有分隔符