Jeśli prowadzisz sklep internetowy lub prowadzisz działalność e-commerce, ważne jest, aby kupować najlepiej sprzedające się produkty. Ponieważ większość witryn internetowych działa na MySQL, w tym artykule przyjrzymy się MySQL Query, aby uzyskać najlepiej sprzedające się produkty dla Twojej firmy. Jest to bardzo przydatne w zrozumieniu, które produkty mają się dobrze, a które wymagają nacisku. Możesz użyć tych zapytań, aby uzyskać najlepiej sprzedające się produkty lub uzyskać listę najlepiej sprzedających się przedmiotów w swojej witrynie.
Zapytanie MySQL, aby uzyskać najlepiej sprzedające się produkty
Przyjrzymy się dwóm przypadkom – po pierwsze, gdy informacje o produkcie i informacje o sprzedaży znajdują się w tej samej tabeli. Po drugie, gdy informacje o produkcie i sprzedaży znajdują się w różnych tabelach.
Jak zdobyć najlepiej sprzedające się produkty
Załóżmy, że masz tabelę sprzedaż(id, produkt, data_zamówienia, kwota) który zawiera informacje o produkcie i ilości sprzedaży w jednej tabeli.
mysql> create table sales(id int, product varchar(10), order_date date, amount int); mysql> insert into sales(id, product, order_date, amount) values(1, 'Bike','2021-01-01',150), (2, 'Car','2021-01-01',450), (3, 'Bicycle','2021-01-02',50), (5, 'Car','2021-01-02',450), (6, 'Bike','2021-01-03',150), (7, 'SUV','2021-01-04',850), (8, 'Bike','2021-01-04',150); mysql> select * from sales; +------+---------+------------+--------+ | id | product | order_date | amount | +------+---------+------------+--------+ | 1 | Bike | 2021-01-01 | 150 | | 2 | Car | 2021-01-01 | 450 | | 3 | Bicycle | 2021-01-02 | 50 | | 5 | Car | 2021-01-02 | 450 | | 6 | Bike | 2021-01-03 | 150 | | 7 | SUV | 2021-01-04 | 850 | | 8 | Bike | 2021-01-04 | 150 | +------+---------+------------+--------+
Otrzymamy najlepiej sprzedający się produkt pod względem sprzedaży i ilości.
Przeczytaj bonus:Jak uzyskać wiele zliczeń w MySQL
Najlepiej sprzedające się produkty według łącznej sprzedaży
Oto zapytanie SQL, aby uzyskać najlepiej sprzedające się produkty według łącznej sprzedaży. W naszym przypadku wybierzemy 3 najlepiej sprzedające się produkty według łącznej kwoty sprzedaży.
mysql> select product, sum(amount) from sales group by product order by sum(amount) desc limit 3; +---------+-------------+ | product | sum(amount) | +---------+-------------+ | Car | 900 | | SUV | 850 | | Bike | 450 | +---------+-------------+
Przyjrzyjmy się szczegółowo powyższemu zapytaniu. Zasadniczo GROUP BY produkt kolumna i agregacja kwota kolumna za pomocą funkcji SUMA.
Dalej ZAMAWIAJ WEDŁUG sumy (kwoty) w kolejności malejącej, tak aby najlepiej sprzedające się produkty były wymienione na górze. Używamy również klauzuli LIMIT 3, aby wybrać tylko 3 górne wiersze wyników.
Najlepiej sprzedające się produkty według całkowitej ilości
Oto zapytanie SQL, aby uzyskać najlepiej sprzedające się produkty według całkowitego wolumenu, czyli liczby sprzedaży.
mysql> select product, count(amount) from sales group by product order by count(amount) desc limit 3; +---------+---------------+ | product | count(amount) | +---------+---------------+ | Bike | 3 | | Car | 2 | | Bicycle | 1 | +---------+---------------+
Teraz przyjrzymy się drugiemu przypadkowi. Czasami informacje o produkcie i sprzedaży znajdują się w różnych tabelach.
Załóżmy, że masz dwie tabele produkt(id, nazwa_produktu) i sprzedaż(id, identyfikator_produktu, data_zamówienia, kwota)
mysql> create table product(id int,product_name varchar(10)); mysql> insert into product(id, product_name) value(1,'Bike'), (2,'Car'), (3,'Bicycle'), (4,'SUV'); mysql> select * from product; +------+--------------+ | id | product_name | +------+--------------+ | 1 | Bike | | 2 | Car | | 3 | Bicycle | | 4 | SUV | +------+--------------+ mysql> create table sales(id int, product_id int, order_date date, amount int); mysql> insert into sales(id, product_id, order_date, amount) values(1, 1,'2021-01-01',150), (2, 2,'2021-01-01',450), (3, 3,'2021-01-02',50), (5, 2,'2021-01-02',450), (6, 1,'2021-01-03',150), (7, 4,'2021-01-04',850), (8, 1,'2021-01-04',150); mysql> select * from sales; +------+------------+------------+--------+ | id | product_id | order_date | amount | +------+------------+------------+--------+ | 1 | 1 | 2021-01-01 | 150 | | 2 | 2 | 2021-01-01 | 450 | | 3 | 3 | 2021-01-02 | 50 | | 5 | 2 | 2021-01-02 | 450 | | 6 | 1 | 2021-01-03 | 150 | | 7 | 4 | 2021-01-04 | 850 | | 8 | 1 | 2021-01-04 | 150 | +------+------------+------------+--------+
Przeczytaj bonus:Jak używać COALESCE w MySQL
Najlepiej sprzedające się produkty według łącznej sprzedaży
Oto zapytanie SQL, aby uzyskać najlepiej sprzedające się produkty według łącznej sprzedaży. Zasadniczo połączymy dwie tabele, aby uzyskać nazwę produktu i całkowitą sprzedaż w wyniku zapytania.
mysql> select product_name, sum(amount) from sales,product where sales.product_id=product.id group by product_name order by sum(amount) desc limit 3; +--------------+-------------+ | product_name | sum(amount) | +--------------+-------------+ | Car | 900 | | SUV | 850 | | Bike | 450 | +--------------+-------------+
Przyjrzyjmy się szczegółowo powyższemu zapytaniu. WYBIERAMY nazwa_produktu i suma(kwota) kolumny z produktu i sprzedaż tabele. Łączymy dwa stoły za pomocą product_id kolumna z sprzedaży tabela i id kolumna z produktu tabela, GROUP BY produkt kolumna i agregacja kwota kolumna za pomocą funkcji SUMA.
Dalej ZAMAWIAJ WEDŁUG sumy (kwoty) w kolejności malejącej, tak aby najlepiej sprzedające się produkty były wymienione na górze. Używamy również klauzuli LIMIT 3, aby wybrać tylko 3 górne wiersze wyników.
Bonus Przeczytaj:Jak przeszukiwać kolumnę JSON w MySQL
Najlepiej sprzedające się produkty według całkowitej ilości
Oto zapytanie SQL, aby uzyskać najlepiej sprzedające się produkty według całkowitego wolumenu, czyli liczby sprzedaży.
mysql> select product_name, count(amount) from sales,product where sales.product_id=product.id group by product_name order by count(amount) desc limit 3; +--------------+---------------+ | product_name | count(amount) | +--------------+---------------+ | Bike | 3 | | Car | 2 | | Bicycle | 1 | +--------------+---------------+
Uzyskaj najlepiej sprzedające się produkty dzięki Ubiq
Narzędzie Ubiq Reporting obsługuje wszystkie powyższe zapytania SQL i ułatwia wizualizację wyników SQL na różne sposoby. Umożliwia także tworzenie kokpitów i wykresów z danych MySQL. Oto zapytanie SQL, aby uzyskać najlepiej sprzedające się produkty w Ubiq.
W rzeczywistości po uruchomieniu zapytania wystarczy kliknąć typ wizualizacji, aby wykreślić wynik na wykresie.
Potrzebujesz narzędzia do raportowania dla MySQL? Ubiq ułatwia wizualizację danych w ciągu kilku minut i monitorowanie w pulpitach nawigacyjnych w czasie rzeczywistym. Wypróbuj już dziś!