Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Cara Menghitung Persentase Dua Kolom di MySQL

Terkadang Anda mungkin hanya perlu menghitung persentase dari dua kolom di database MySQL. Berikut cara mudah menghitung persentase dua kolom di MySQL.

Cara Menghitung Persentase Dua Kolom di MySQL

Berikut adalah SQL untuk menghitung persentase dua kolom di MySQL. Katakanlah Anda memiliki tabel berikut – penjualan(sales_rep,sale,goal)

mysql> create table sales(sales_rep varchar(255),sale int, goal int);

mysql> insert into sales(sales_rep,sale,goal) 
values('Albert',10,20),('Bob',23,33),('Chris',20,25),('Dave',35,40);

mysql> select * from sales;
+-----------+------+------+
| sales_rep | sale | goal |
+-----------+------+------+
| Albert    |   10 |   20 |
| Bob       |   23 |   33 |
| Chris     |   20 |   25 |
| Dave      |   35 |   40 |
+-----------+------+------+

Katakanlah Anda ingin menghitung pencapaian_persen sebagai penjualan/sasaran*100 untuk setiap perwakilan penjualan.

Berikut kueri SQL untuk menghitung persentase dua kolom (penjualan, sasaran). Anda dapat langsung menghitungnya dengan cepat menggunakan operator pembagian dan perkalian, seperti yang ditunjukkan di bawah ini.

mysql> select sales_rep,sale,goal,
(sale/goal)*100 as attainment_percent from sales;
+-----------+------+------+--------------------+
| sales_rep | sale | goal | attainment_percent |
+-----------+------+------+--------------------+
| Albert    |   10 |   20 |            50.0000 |
| Bob       |   23 |   33 |            69.6970 |
| Chris     |   20 |   25 |            80.0000 |
| Dave      |   35 |   40 |            87.5000 |
+-----------+------+------+--------------------+

Bonus Baca : Cara Mengotomatiskan Kueri Tabel Pivot di MySQL

Jika Anda ingin membulatkan angka persen menjadi 2 tempat desimal, Anda dapat menggunakan fungsi ROUND seperti yang ditunjukkan

mysql> select sales_rep,sale,goal,
round((sale/goal)*100,2) as attainment_percent from sales;
+-----------+------+------+--------------------+
| sales_rep | sale | goal | attainment_percent |
+-----------+------+------+--------------------+
| Albert    |   10 |   20 |              50.00 |
| Bob       |   23 |   33 |              69.70 |
| Chris     |   20 |   25 |              80.00 |
| Dave      |   35 |   40 |              87.50 |
+-----------+------+------+--------------------+

Jika Anda ingin menghitung persentase dua kolom hanya untuk baris tertentu, tambahkan klausa WHERE seperti yang ditunjukkan di bawah ini dalam huruf tebal

mysql> select sales_rep,sale,goal
,round((sale/goal)*100,2) as attainment_percent
 from sales
 where sales_rep in ('Bob','Dave');
+-----------+------+------+--------------------+
| sales_rep | sale | goal | attainment_percent |
+-----------+------+------+--------------------+
| Bob       |   23 |   33 |              69.70 |
| Dave      |   35 |   40 |              87.50 |
+-----------+------+------+--------------------+

Bonus Baca : Cara Menghitung Moving Average di MySQL

Jika total data Anda tersebar di beberapa kolom, seperti yang ditunjukkan di bawah ini,

mysql> create table sales(sales_rep varchar(255),sale int, sale2 int,sale3 int);

mysql> insert into sales(sales_rep,sale,sale2,sale3) 
values('Albert',10,20,10),('Bob',23,33,20),
('Chris',20,25,15),('Dave',35,40,20);

mysql> select * from sales;
+-----------+------+-------+-------+
| sales_rep | sale | sale2 | sale3 |
+-----------+------+-------+-------+
| Albert    |   10 |    20 |    10 |
| Bob       |   23 |    33 |    20 |
| Chris     |   20 |    25 |    15 |
| Dave      |   35 |    40 |    20 |
+-----------+------+-------+-------+

kemudian Anda dapat menghitung persentase setiap kolom dengan menjumlahkan nilainya dengan cepat, seperti yang ditunjukkan di bawah ini.

mysql> select sales_rep,sale, sale2,sale3, 
(sale/(sale+sale2+sale3))*100 as sale_pct, 
(sale2/(sale+sale2+sale3))*100 as sale2_pct, 
(sale3/(sale+sale2+sale3))*100 as sale3_pct 
from sales;
+-----------+------+-------+-------+----------+-----------+-----------+
| sales_rep | sale | sale2 | sale3 | sale_pct | sale2_pct | sale3_pct |
+-----------+------+-------+-------+----------+-----------+-----------+
| Albert    |   10 |    20 |    10 |  25.0000 |   50.0000 |   25.0000 |
| Bob       |   23 |    33 |    20 |  30.2632 |   43.4211 |   26.3158 |
| Chris     |   20 |    25 |    15 |  33.3333 |   41.6667 |   25.0000 |
| Dave      |   35 |    40 |    20 |  36.8421 |   42.1053 |   21.0526 |
+-----------+------+-------+-------+----------+-----------+-----------+

Anda dapat menyesuaikan kueri di atas untuk menghitung persentase dua kolom, sesuai kebutuhan Anda.

Anda juga dapat menggunakan alat pelaporan untuk memplot data ini pada tabel atau dasbor dan membagikannya dengan tim Anda. Berikut contoh tabel dengan data di atas, dibuat menggunakan Ubiq.

Jika Anda ingin membuat grafik, dasbor &laporan dari database MySQL, Anda dapat mencoba Ubiq. Kami menawarkan uji coba gratis selama 14 hari.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Python Terhubung Ke Database MySQL Dengan Konektor MySQL &Contoh PyMySQL

  2. Cara Menyebarkan Database MySQL Chamilo untuk Ketersediaan Tinggi

  3. Mengatur Django untuk menggunakan MySQL

  4. Fungsi kata sandi MySQL

  5. MySQL:Pisahkan daftar yang dipisahkan koma menjadi beberapa baris