簡體   English   中英

如何計算具有不同記錄的查詢?

[英]How to count query with distinct records?

我有一個帶有 DISTINCT 列的查詢。

SELECT 
    DISTINCT column_1
    column_2,
    column_3,
    column_4,
    column_5,
    column_6,
    column_7,
    column_8,
    column_9
FROM 
    my_table 
WHERE 
    column_4 IN(some array) 
    and ... 
    order by column_1, column_2

這個查詢是正確的,它返回了大約 1000 條記錄。 現在我需要使用計數找出記錄總數。

我試過 select count(DISTINCT column_1) 但計數記錄不是 1000。

我可以從 PHP 應用計數記錄,但我希望通過查詢本身來完成。

有人可以教我如何編寫計數查詢嗎?

COUNT(DISTINCT column_1)只計算不同column_1值的數量。 要獲得查詢中的結果數,您需要將COUNT(DISTINCT...)應用於所有列:

SELECT COUNT(DISTINCT column_1, column_2, column_3, column_4, ... column_9)
FROM my_table 
WHERE ...

請注意,這是 SQL 的 MySQL 擴展,不適用於其他 DBMS。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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