簡體   English   中英

來自 MS Access 的 SQL 復制查詢

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM