Хистограмата ви помага да начертаете разпределението на честотата от данни и бързо да извлечете прозрения. Ето как да създадете хистограма в MySQL. Можете да го използвате за създаване на честотно разпределение в MySQL, както и в PostgreSQL.
Как да създадем хистограма в MySQL?
Ето SQL заявката за създаване на хистограма в MySQL.
Да приемем, че имате следната таблица sales(order_date, sale)
mysql> create table sales(order_date date,sale int); mysql> insert into sales values('2020-04-01',210), ('2020-04-02',125),('2020-04-03',150),('2020-04-04',230), ('2020-04-05',200),('2020-04-10',220),('2020-04-06',250), ('2020-04-07',215),('2020-04-08',300),('2020-04-09',250); mysql> select * from sales; order_date | sale ------------+------ 2020-04-01 | 210 2020-04-02 | 125 2020-04-03 | 150 2020-04-04 | 230 2020-04-05 | 200 2020-04-10 | 220 2020-04-06 | 250 2020-04-07 | 215 2020-04-08 | 300 2020-04-09 | 250
Бонус четене:Как да импортирам CSV файл в MySQL
Създайте хистограма в MySQL
Има множество MySQL Histrogram заявки за създаване на хистограма в MySQL. Ще разгледаме всеки един от тях.
Най-простият начин за създаване на хистограма в MySQL
Ако вашите MySQL хистограмни кошчета имат равни интервали (10-20, 20-30, 30-40 и т.н.), тогава ето SQL заявката за създаване на честотно разпределение в MySQL.
mysql> select floor(sale/10)*10 as bin_floor, count(*) from sales group by 1 order by 1; +-----------+----------+ | bin_floor | count(*) | +-----------+----------+ | 120 | 1 | | 150 | 1 | | 200 | 1 | | 210 | 2 | | 220 | 1 | | 230 | 1 | | 250 | 2 | | 300 | 1 | +-----------+----------+
В горната заявка размерът на кошчето на хистограмата е 10. Ако искате да промените размера на кошчето на 25, променете floor(sale/10 )*10 до етаж (разпродажба/25 )*25
mysql> select floor(sale/25)*25 as bin_floor, count(*) from sales group by 1 order by 1; +-----------+----------+ | bin_floor | count(*) | +-----------+----------+ | 125 | 1 | | 150 | 1 | | 200 | 4 | | 225 | 1 | | 250 | 2 | | 300 | 1 | +-----------+----------+
Предимството на горния метод е, че той автоматично променя кошчетата въз основа на добавяне/изтриване/модификация на данни.
Бонус четене:Как да изчислим процента на конверсия в MySQL
Най-гъвкав начин за създаване на хистрограма в MySQL
Ако вече знаете кошчетата на хистограмата, които трябва да бъдат създадени, или ако размерите на кофата на хистограмата ви са различни, тогава можете да създадете разпределение на честотата, като използвате израза CASE. Ето заявката за хистограма за MySQL
mysql> select "100-150" as TotalRange,count(sale) as Count from sales where sale between 100 and 150 union ( select "150-200" as TotalRange,count(sale) as Count from sales where sale between 150 and 200) union ( select "200-225" as TotalRange,count(sale) as Count from sales where sale between 200 and 225) union ( select "225-250" as TotalRange,count(sale) as Count from sales where sale between 225 and 250); +------------+-------+ | TotalRange | Count | +------------+-------+ | 100-150 | 2 | | 150-200 | 2 | | 200-225 | 4 | | 225-250 | 3 | +------------+-------+
В тази заявка можете да промените кофите на хистограмата към всеки диапазон, който искате, не е необходимо те да имат еднакви интервали. Тази заявка работи чудесно, ако имате 5-10 кофи.
Бонус за четене:Как да попълним липсващите дати в MySQL
След като създадете честотно разпределение в MySQL, можете да използвате инструмент за диаграми, за да го начертаете в колонна диаграма. Ето графика, създадена с Ubiq.
Между другото, ако искате да създавате диаграми, табла за управление и отчети от MySQL база данни, можете да опитате Ubiq. Предлагаме 14-дневен безплатен пробен период.