Как посчитать запрос с разными записями? - PullRequest
0 голосов
/ 23 марта 2020

У меня есть запрос со столбцами 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 записей. Теперь мне нужно узнать общее количество записей, используя счетчик.

Я попытался выбрать счетчик (DISTINCT column_1), но запись счетчика не 1000.

Я могу применить подсчет записей из PHP но я хочу сделать это из самого запроса.

Кто-нибудь может научить меня, как написать запрос подсчета?

1 Ответ

2 голосов
/ 23 марта 2020

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 ...

Обратите внимание, что это расширение MySQL для SQL и не будет работать на других СУБД.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...