MySQL MariaDB

MySQL Count Matching Records с COUNT

MySQL Count Matching Records с COUNT

Избыточность данных возникает по множеству причин. Некоторые из сложных задач, с которыми вы должны справиться при работе с системами баз данных, - это попытка обнаружить повторяющиеся значения. Для этого мы будем использовать агрегатный метод COUNT (). Метод COUNT () возвращает сумму строк, находящихся в определенной таблице. Функция COUNT () позволяет суммировать все строки или только строки, соответствующие заданному условию. В этом руководстве вы узнаете, как определять повторяющиеся значения для одного или нескольких столбцов MySQL с помощью COUNT (). Метод COUNT () имеет три типа:

Убедитесь, что в вашей системе установлен MySQL. Откройте клиентскую оболочку командной строки MySQL и введите свой пароль, чтобы продолжить. Мы рассмотрим несколько примеров подсчета совпадающих значений с помощью метода COUNT ().

У нас есть таблица 'social' в нашей схеме 'data'. Проверим его запись с помощью следующего запроса.

>> ВЫБРАТЬ * ИЗ данных.Социальное;

MySQL COUNT (*)

Метод COUNT (*) используется для подсчета количества строк, находящихся в таблице, или подсчета количества строк в соответствии с заданным условием. Чтобы проверить общее количество строк в таблице, "социальные сети" попробуйте запрос ниже. По результату у нас в таблице всего 15 строк.

>> ВЫБРАТЬ СЧЕТЧИК (*) ИЗ данных.Социальное;

Взгляните на метод COUNT (*) при определении некоторых условий. Нам нужно получить количество строк, в которых имя пользователя совпадает с «Мустафа». Вы можете видеть, что у нас есть только 4 записи для этого конкретного имени.

>> ВЫБРАТЬ СЧЕТЧИК (*) ИЗ данных.социальные сети WHERE User = 'Mustafa';

Чтобы получить общую сумму строк, в которых веб-сайт пользователя - «Instagram», попробуйте следующий запрос. В таблице «соцсети» всего 4 записи для сайта «Инстаграм».

>> ВЫБРАТЬ СЧЕТЧИК (*) ИЗ данных.social WHERE Website = 'Instagram';

Чтобы получить общее количество строк, в которых «Возраст» больше 18, выполните следующие действия:

>> ВЫБРАТЬ СЧЕТЧИК (*) ИЗ данных.социальные ГДЕ Возраст> 18 лет;

Получим данные столбцов «Пользователь» и «Веб-сайт» из таблицы, где имя пользователя начинается с буквы «М». Попробуйте приведенную ниже инструкцию на оболочке.

>> ВЫБРАТЬ пользователя, веб-сайт ИЗ данных.social WHERE Пользователь любит "M%";

MySQL COUNT (выражение)

В MySQL метод COUNT (выражение) используется только тогда, когда вы хотите подсчитать ненулевые значения столбца 'выражение'. "Выражение" будет именем любого столбца. Давайте рассмотрим простой пример. Мы подсчитывали только ненулевые значения столбца «Веб-сайт», который связан со столбцом «Возраст», имеющим значение, равное «25». Видеть! У нас есть только 4 ненулевые записи для пользователей в возрасте 25 лет, которые используют веб-сайты.

>> ВЫБРАТЬ КОЛИЧЕСТВО (Веб-сайт) ИЗ данных.социальные ГДЕ Возраст = 25;

MySQL COUNT (выражение DISTNCT)

В MySQL метод COUNT (DISTINCT expression) используется для суммирования значений, отличных от NULL, и различных значений столбца «выражение». Чтобы подсчитать определенное количество ненулевых значений в столбце «Возраст», мы использовали следующий запрос. Вы найдете 6 непустых и различных записей столбца «Возраст» из таблицы «социальный». Это означает, что у нас всего 6 человек разного возраста.

>> ВЫБРАТЬ СЧЕТЧИК (ОТЛИЧИТЕЛЬНЫЙ возраст) ИЗ данных.Социальное;

MySQL COUNT (ЕСЛИ (выражение))

Для большего акцента вы должны объединить COUNT () с функциями управления потоком. Для начала, для части выражения, используемого в методе COUNT (), вы можете использовать функцию IF (). Это может быть очень полезно для быстрой разбивки информации в базе данных. Мы будем подсчитывать количество строк с разными возрастными условиями и разделять их на три разных столбца, которые можно назвать категориями. Во-первых, COUNT (IF) будет подсчитывать строки, возраст которых меньше 20, и сохранять это количество в новом столбце с именем Teenage. Второй COUNT (IF) подсчитывает строки с возрастом от 20 до 30, сохраняя его в столбце «Молодой». В-третьих, последний подсчитывает строки старше 30 лет, сохраненные в столбце «Зрелые». В нашем послужном списке 5 подростков, 9 молодых и только 1 зрелый человек.

>> ВЫБРАТЬ СЧЕТЧИК (ЕСЛИ (Возраст < 20,1,NULL)) 'Teenage', COUNT(IF(Age BETWEEN 20 AND  30,1,NULL)) 'Young', COUNT(IF(Age > 30,1, NULL)) 'Mature' ИЗ данных.Социальное;

MySQL COUNT (*) с предложением GROUP BY

Оператор GROUP BY - это инструкция SQL, использующая для группировки строк с одинаковыми значениями. Возвращает общее количество значений, находящихся в каждой группе. Например, если вы хотите проверить номер каждого пользователя отдельно, вы должны определить столбец «Пользователь» с предложением GROUP BY при подсчете записей для каждого пользователя с помощью COUNT (*).

>> ВЫБРАТЬ пользователя, СЧЁТ (*) ИЗ данных.социальная группа по пользователю;

Вы можете выбрать более двух столбцов при выполнении подсчета строк вместе с предложением GROUP BY, как показано ниже.

>> ВЫБРАТЬ пользователя, возраст, веб-сайт, COUNT (*) ИЗ данных.социальный веб-сайт GROUP BY;

Если мы хотим подсчитать строки при использовании предложения WHERE с некоторыми условиями в нем наряду с GROUP BY и COUNT (*), вы также можете сделать это. Приведенный ниже запрос будет извлекать и подсчитывать записи столбцов: «Пользователь», «Веб-сайт» и «Возраст», где значение веб-сайта - только «Instagram» и «Snapchat». Вы можете видеть, что у нас есть только 1 запись для обоих веб-сайтов для разных пользователей.

>> ВЫБРАТЬ пользователя, веб-сайт, возраст, COUNT (*) ИЗ данных.social WHERE Website = 'Instagram' or Website = 'Snapchat' ГРУППА ПО веб-сайту, возрасту;

MySQL COUNT (*) с предложением GROUP BY и ORDER BY

Давайте попробуем предложения GROUP BY и ORDER BY совместно с методом COUNT (). Давайте возьмем и посчитаем строки таблицы social, упорядочивая данные в порядке убывания с помощью этого запроса:

>> ВЫБРАТЬ пользователя, веб-сайт, возраст, COUNT (*) ИЗ данных.социальная ГРУППА ПО возрасту ORDER BY COUNT (*) DESC;

Приведенный ниже запрос сначала подсчитает строки, а затем отобразит только записи, имеющие COUNT больше 2 в порядке возрастания.

>> ВЫБРАТЬ пользователя, возраст, COUNT (*) ИЗ данных.социальная ГРУППА ПО возрасту HAVING COUNT (*)> 2 ORDER BY COUNT (*) ASC;

Заключение

Мы рассмотрели все возможные методы для подсчета совпадающих или повторяющихся записей, используя метод COUNT () с другими другими предложениями.

Средняя кнопка мыши не работает в Windows 10
В средняя кнопка мыши помогает пролистывать длинные веб-страницы и экраны с большим объемом данных. Если это прекратится, вы в конечном итоге будете и...
Как изменить левую и правую кнопки мыши на ПК с Windows 10
Совершенно нормально, что все устройства компьютерной мыши эргономичны для правшей. Но есть мышиные устройства, специально разработанные для левшей ил...
Эмуляция щелчков мыши с помощью мыши без щелчка в Windows 10
Использование мыши или клавиатуры в неправильной позе или чрезмерное использование может привести к множеству проблем со здоровьем, включая растяжение...