Memantau Pertumbuhan Persentase Minggu-ke-minggu adalah cara yang berguna untuk melacak tren pertumbuhan mingguan dalam bisnis Anda. Berikut cara menghitung persentase pertumbuhan minggu ke minggu di MySQL. Ini dapat digunakan untuk menghitung perubahan minggu demi minggu dalam SQL untuk metrik apa pun.
Cara Menghitung Persentase Pertumbuhan Minggu Ke Minggu di MySQL
Berikut adalah langkah-langkah untuk menghitung persentase pertumbuhan minggu ke minggu di MySQL. Katakanlah Anda memiliki tabel mingguan_penjualan(minggu,penjualan) yang berisi angka penjualan mingguan, seperti yang ditunjukkan di bawah ini.
mysql> create table weekly_sales(week int, sale int); mysql> insert into weekly_sales(week,sale) values(1,20),(2,30),(3,25),(4,45),(5,25); mysql> select * from weekly_sales; +------+------+ | week | sale | +------+------+ | 1 | 20 | | 2 | 30 | | 3 | 25 | | 4 | 45 | | 5 | 25 | +------+------+
Anda dapat menghitung persentase pertumbuhan dari minggu ke minggu menggunakan kueri SQL berikut untuk persentase pertumbuhan.
mysql> select week, sale, if(@last_entry = 0, 0, round(((sale - @last_entry) / @last_entry) * 100,2)) "growth rate", @last_entry := sale from (select @last_entry := 0) x, (select week, sum(sale) sale from weekly_sales group by week) y; +------+------+-------------+---------------------+ | week | sale | growth rate | @last_entry := sale | +------+------+-------------+---------------------+ | 1 | 20 | 0 | 20 | | 2 | 30 | 50.00 | 30 | | 3 | 25 | -16.67 | 25 | | 4 | 45 | 80.00 | 45 | | 5 | 25 | -44.44 | 25 | +------+------+-------------+---------------------+
Dalam kueri di atas, untuk setiap minggu, kami menyimpan data minggu sebelumnya dalam variabel sementara yang disebut last_entry dan gunakan untuk menghitung persentase pertumbuhan.
Bonus Baca : Cara Menghitung Persentase Dua Kolom di MySQL
Namun, dalam kebanyakan kasus, Anda akan memiliki data penjualan harian, bukan penjualan mingguan. Jadi, dalam hal ini, Anda harus terlebih dahulu menggabungkannya ke penjualan mingguan, lalu menggunakan kueri di atas untuk menghitung persentase pertumbuhan dari minggu ke minggu.
Katakanlah Anda memiliki tabel data penjualan harian penjualan(tanggal_pesanan, obral)
mysql>create table sales(order_date date,sale int); mysql>insert into sales(order_date,sale) values('2020-01-01',10),('2020-01-02',12),('2020-01-03',15), ('2020-01-04',11),('2020-01-05',13),('2020-01-06',9), ('2020-01-07',21),('2020-01-08',10),('2020-01-09',10), ('2020-01-10',2),('2020-01-11',16),('2020-01-12',12), ('2020-01-13',10),('2020-01-14',18),('2020-01-15',15), ('2020-01-16',12),('2020-01-17',10),('2020-01-18',18), ('2020-01-19',14),('2020-01-20',16),('2020-01-21',12), ('2020-01-22',21),('2020-01-23',13),('2020-01-24',15), ('2020-01-25',20),('2020-01-26',14),('2020-01-27',16), ('2020-01-28',15),('2020-01-29',10),('2020-01-30',18); mysql>select * from sales; +------------+------+ | order_date | sale | +------------+------+ | 2020-01-01 | 10 | | 2020-01-02 | 12 | | 2020-01-03 | 15 | | 2020-01-04 | 11 | | 2020-01-05 | 13 | | 2020-01-06 | 9 | | 2020-01-07 | 21 | | 2020-01-08 | 10 | | 2020-01-09 | 10 | | ... | ...| +------------+------+
Katakanlah Anda ingin menghitung persentase pertumbuhan dari minggu ke minggu, inilah SQL untuk perubahan persen dari waktu ke waktu.
mysql> select week, sale, if(@last_entry = 0, 0, round(((sale - @last_entry) / @last_entry) * 100,2)) "growth rate", @last_entry := sale from (select @last_entry := 0) x, (select week, sum(sale) sale from (select week(order_date) as week,sum(sale) as sale from sales group by week(order_date)) weekly_sales group by week) y; +------+------+-------------+---------------------+ | week | sale | growth rate | @last_entry := sale | +------+------+-------------+---------------------+ | 0 | 48 | 0 | 48 | | 1 | 81 | 68.75 | 81 | | 2 | 95 | 17.28 | 95 | | 3 | 111 | 16.84 | 111 | | 4 | 73 | -34.23 | 73 | +------+------+-------------+---------------------+
Dalam kueri di atas, pertama-tama kami menggabungkan penjualan harian ke dalam penjualan mingguan (dalam tebal ) lalu gunakan kueri sebelumnya untuk menghitung persentase pertumbuhan dari minggu ke minggu.
Bonus Baca : Cara Menghitung Persentase Satu Kolom di MySQL
Jika Anda ingin memfilter data yang digunakan untuk kueri Anda, Anda dapat menambahkan klausa WHERE dalam kueri Anda seperti yang ditunjukkan di bawah ini
mysql> select week, sale, if(@last_entry = 0, 0, round(((sale - @last_entry) / @last_entry) * 100,2)) "growth rate", @last_entry := sale from (select @last_entry := 0) x, (select week, sum(sale) sale from (select week(order_date) as week,sum(sale) as sale from sales WHERE condition group by week(order_date)) weekly_sales group by week) y;
Harap dicatat, karena perhitungan persentase pertumbuhan minggu ke minggu tergantung pada penyimpanan nilai baris sebelumnya dalam variabel sementara, harap pastikan bahwa tabel Anda sudah diurutkan dalam urutan nomor minggu. Jika tidak, mungkin akan memberikan hasil yang salah.
Setelah Anda menghitung persentase pertumbuhan dari minggu ke minggu, Anda dapat menggunakan alat bagan untuk memplot hasilnya dalam bagan batang, dan membagikannya dengan tim Anda. Berikut adalah contoh diagram batang yang menunjukkan persentase perubahan dari waktu ke waktu, 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.