Sql group by count group: sql — How to use count and group by at the same select statement
Содержание
SQL GROUP BY запрос для подсчета записей в группе и подгруппе данных
Вы можете увидеть команду Count перед использованием команды GROUP BY здесь. Команда GROUP BY создаст группы в указанном имени поля и подсчитает количество записей в группах. Это очень полезная команда.
Мы также можем использовать команду WHERE вместе с командой GROUP BY в таблицах Mysql.
SELECT count(*) as total_records, class FROM `student` group by class
Это покажет общее количество записей в каждом классе. Так
всего_записей | класс |
1 | Восемь |
3 | Пять |
9 | Четыре |
2 | Девять |
10 | Семь |
7 | Шесть |
3 | Три |
Попробуем получить общее количество записей девочек в каждом классе с помощью запроса GROUP BY. Здесь мы хотим отфильтровать наш запрос только для девочек, поэтому нам нужно использовать одно предложение WHERE, чтобы ограничить записи с помощью поля пола. Вот запрос.
ВЫБЕРИТЕ class,count( * ) AS total_records FROM `student` WHERE gender='female' GROUP BY class
Связанный учебник
Подгруппа по
SQL Имея
Результат здесь:
класс | total_records |
Четыре | 5 |
Девять | |
Семь | 5 |
Шесть | 5 |
Три | 1 |
СГРУППИРОВАТЬ ПО с COUNT(), MIN(),MAX(),AVG()
SELECT class, count(*) no, AVG(mark),MAX(mark),MIN(mark),SUM(mark) ОТ УЧЕНИКА ГРУППА ПО КЛАССУ ЗАКАЗ ПО № DESC
класс | нет | AVG (метка) | MAX (метка) | MIN (метка) | СУММА (метка) |
---|---|---|---|---|---|
10 | 77,6000 | 90 | 55 | 776 | |
Четыре | 9 | 70,8889 | 88 | 55 | 638 |
Шесть | 7 | 82.![]() | 96 | 54 | 578 |
Три | 3 | 73,6667 | 85 | 55 | 221 |
Пять | 79,3333 | 85 | 75 | 238 | |
Девять | 2 | 41,5000 | 18 | 83 | |
Восемь | 1 | 79.0000 | 79 | 79 | 79 |
Использование двух столбцов с GROUP BY
ВЫБЕРИТЕ класс, пол, COUNT( * ) Нет ОТ учащегося ГРУППА ПО классам, порядок пола по классам
Выход
класс | пол | № |
---|---|---|
восемь | мужской | 1 |
Пять | «папа» | 3 |
Четыре | женский | 5 |
четыре | мужской | 4 |
девять | женский | |
Девять | мужской | 1 |
Семь | женский | 5 |
Семь | мужской | 5 |
Шесть | женский | 5 |
Шесть | наружная | 2 |
Три | женский | 1 |
Три | мужской | 2 |
ГРУППА ПО с C АСЭ
Мы можем далее разбить столбец пол , чтобы получить количество мужчин и женщин в каждом классе, используя регистр SQL.
класс SELECT, count(*) как Total, сумма (СЛУЧАЙ, КОГДА пол = 'мужской', ТОГДА 1 ЕЩЕ 0 КОНЕЦ) как мужчина, сумма (СЛУЧАЙ, КОГДА пол = 'Женский', ТОГДА 1 ELSE 0 END) как Женский ИЗ студенческой группы по классам;
Выход
класс | Всего | Мужской | Женский |
---|---|---|---|
Восемь | 1 | 1 | |
Пять | 3 | 3 | 0 |
Четыре | 9 | 4 | 5 |
Девять | 2 | 1 | 1 |
Семь | 10 | 5 | 5 |
Шесть | 7 | 2 | 5 |
Три | 3 | 2 90 012 | 1 |
Повторяющиеся записи
Мы можем найти повторяющиеся записи в таблице, используя команду group by. Мы создадим еще одну таблицу student2_1 , используя те же данные и добавив несколько повторяющихся записей. Вот запрос
ВЫБЕРИТЕ имя, COUNT(id) КАК нет из группы student2_1 по имени, не имеющему > 1
Выход здесь.
имя | № |
---|---|
Арнольд | 2 |
Тейд Роу | 3 |
Вы можете загрузить дамп SQL этой таблицы stduent2_1 с добавленными повторяющимися данными в конце этой страницы.
Как удалить повторяющиеся записи
Используя группировку по полю даты, мы можем создать список по календарному году, финансовому году, месяцу
Код образца
Вот пример кода, чтобы понять, как использовать группировку по запросу с использованием PHP-скрипта и PDO.
требуют "../config.php"; // Подключение к базе данных //////////////////////////// $sql="SELECT count(*) as total_records, class FROM `student`, группировка по классам "; эхо "<таблица>"; foreach ($dbo->query($sql) as $row) { echo ""; } эхо "таблица>"; $row[класс] $row[total_records]
ЧАСТЬ II: Мы попробуем применить группу по команде более чем к одному полю. Для этого создадим новую таблицу и подробно обсудим. Следующая часть II
Загрузка SQL DUMP этой таблицы учеников
Загрузить дамп SQL таблицы stduent2_1
← Справочники по SQL Math
ГРУППА_КОНКАТ()→
Группировать по команде для более чем одного столбца →
← Подпишитесь на наш канал YouTube здесь
Эта статья написана plus2net.com команда.
https://www.plus2net.com
plus2net.com
▼ Подробнее о получении записей из таблицы различными комбинациями команд
sampat | 26- 02-2009 |
я хотите отобразить всю запись из таблицы, в котором, если столбец содержит повторяющееся значение, он сразу покажет повторяющееся значение |
smo | 27-02-2009 |
Вы должны использовать отдельную команду SQL.![]() |
Алисия | 22-08-2009 |
очень хороший урок, он мне очень помогает 🙂 |
картик | 23-10-2010 |
я хочу отобразить столбец в строке. |
Пишите здесь свои комментарии, предложения, ошибки, требования и т. д.
Деталь
Запросы
ВСТАВЛЯТЬ
ОБНОВЛЯТЬ
Совокупные запросы
СРЕДНИЙ (средний)
СУММА
МИН.
МАКС
Видеоруководства по SQL
© 2000-2023 plus2net.com Все права защищены во всех странах мира
Отказ от ответственности в отношении политики конфиденциальности
PySpark GroupBy Count — объяснение
Распространяйте любовь
PySpark Groupby Count используется для получения количества записей для каждой группы. Итак, чтобы выполнить подсчет, сначала вам нужно выполнить groupBy() для DataFrame, который группирует записи на основе значений одного или нескольких столбцов, а затем выполнить count(), чтобы получить количество записей для каждой группы.
В этой статье я объясню, как использовать агрегаты groupBy() и count() вместе с примерами. Функция PySpark groupBy() используется для сбора идентичных данных в группы и выполнения агрегатных функций, таких как размер/счет для сгруппированных данных.
1. Краткие примеры группового подсчета
Ниже приведены краткие примеры выполнения группового подсчета.
# Быстрые примеры # groupBy для одного столбца df2 = df.groupBy("отдел").count() df2.show() # groupBy для нескольких столбцов df2 = df.groupBy("отдел","штат").count() df2.show() # Группа SQL по количеству # Создаем временную таблицу в PySpark df.createOrReplaceTempView("EMP") # PySpark SQL sql_str="выберите отдел, штат, количество (*) как количество из EMP " + \ "группировать по отделам, штатам" spark.sql(sql_str).show()
Сначала создадим DataFrame
# Импорт из pyspark.sql импортировать SparkSession # Создать SparkSession искра = SparkSession.builder.appName('SparkByExamples.com') \ .мастер("местный[5]").getOrCreate() # Создать кадр данных simpleData = [("Джеймс","Продажи","Нью-Йорк",,34,10000), ("Майкл", "Продажи", "Нью-Йорк", 86000,56,20000), ("Роберт", "Продажи", "CA", 81000,30,23000), ("Мария","Финанс","ЦА",
,24,23000), («Раман», «Финанс», «ЦА», 99000,40,24000), («Скотт», «Финансы», «Нью-Йорк», 83000,36,19000), («Джен», «Финансы», «Нью-Йорк», 79000,53,15000), («Джефф», «Маркетинг», «CA», 80000,25,18000), («Кумар», «Маркетинг», «Нью-Йорк», 91000,50,21000) ] схема = ["имя_сотрудника","отдел","штат","зарплата","возраст","бонус"] df = spark.createDataFrame (данные = простые данные, схема = схема) df.show ()
Выход ниже выходного.
2. Пример подсчета групп PySpark
Используя DataFrame.groupBy(). count() в PySpark, вы можете получить количество строк для каждой группы. Функция DataFrame.groupBy() возвращает объект pyspark.sql.GroupedData, который содержит набор методов для выполнения агрегирования в DataFrame.
# количество групп PySparkBy() df2 = df.groupBy("отдел").count() df2.show()
Выход ниже выходного.
3. Групповой подсчет PySpark для нескольких столбцов
Групповой подсчет для нескольких столбцов можно выполнить, передав функции два или более столбца и используя count() поверх результата. В следующем примере выполняется группировка по столбцам отдела
и состояния
, и в результате я использовал функцию count().
# groupBy для нескольких столбцов df2 = df.groupBy("отдел","штат").count() df2.show()
Выход ниже выходного.
4. PySpark SQL GROUP BY COUNT
Наконец, с помощью PySpark вы также можете выполнять SQL-запросы, поэтому давайте запустим приведенный выше пример в SQL, выполнив SELECT GROUP BY Count(*).
Для этого сначала необходимо создать временное представление с помощью createOrReplaceTempView() и использовать SparkSession.sql() для выполнения запроса. Таблица будет доступна для использования до тех пор, пока вы не завершите сеанс SparkSession.
# SQL-группа PySpark по количеству # Создаем временную таблицу в PySpark df.createOrReplaceTempView("EMP") # PySpark SQL sql_str="выберите отдел, штат, количество (*) как количество из EMP " + \ "группировать по отделам, штатам" spark.sql(sql_str).show()
5. Полный пример Groupby Count
Ниже приведен полный пример groupBy() и count().
# Импорт
из pyspark.sql импортировать SparkSession
# Создать SparkSession
искра = SparkSession.builder.appName('SparkByExamples.com') \
.мастер("местный[5]").getOrCreate()
# Создать кадр данных
simpleData = [("Джеймс","Продажи","Нью-Йорк",,34,10000),
("Майкл", "Продажи", "Нью-Йорк", 86000,56,20000),
("Роберт", "Продажи", "CA", 81000,30,23000),
("Мария","Финанс","ЦА",,24,23000),
(«Раман», «Финансы», «ЦА», 99000,40,24000),
(«Скотт», «Финансы», «Нью-Йорк», 83000,36,19000),
(«Джен», «Финансы», «Нью-Йорк», 79000,53,15000),
(«Джефф», «Маркетинг», «CA», 80000,25,18000),
(«Кумар», «Маркетинг», «Нью-Йорк», 91000,50,21000)
]
схема = ["имя_сотрудника","отдел","штат","зарплата","возраст","бонус"]
df = spark.![]()