Điều quan trọng là phải có được những sản phẩm bán chạy nhất, nếu bạn điều hành một cửa hàng trực tuyến hoặc doanh nghiệp thương mại điện tử. Vì hầu hết các trang web trực tuyến chạy trên MySQL, trong bài viết này, chúng ta sẽ xem xét MySQL Query để có được các sản phẩm bán chạy nhất cho doanh nghiệp của bạn. Nó rất hữu ích trong việc hiểu sản phẩm nào đang hoạt động tốt và sản phẩm nào cần thúc đẩy. Bạn có thể sử dụng các truy vấn này để nhận được các sản phẩm được bán nhiều nhất hoặc nhận danh sách các mặt hàng bán chạy nhất trên trang web của bạn.
Truy vấn MySQL để có được các sản phẩm bán chạy nhất
Chúng ta sẽ xem xét hai trường hợp - thứ nhất, khi thông tin sản phẩm và thông tin bán hàng của bạn nằm trong cùng một bảng. Thứ hai, khi sản phẩm và thông tin bán hàng của bạn ở các bảng khác nhau.
Làm thế nào để có được những sản phẩm bán chạy nhất
Giả sử bạn có bảng doanh số bán hàng (id, sản phẩm, ngày_đặt_hàng, số tiền) trong đó chứa thông tin về sản phẩm và số lượng bán trong một bảng.
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 | +------+---------+------------+--------+
Chúng tôi sẽ nhận được sản phẩm bán chạy nhất theo doanh số và theo số lượng.
Phần thưởng đã đọc:Cách nhận được nhiều số lượng trong MySQL
Sản phẩm bán chạy nhất theo tổng doanh số
Đây là truy vấn SQL để lấy các sản phẩm bán chạy nhất theo tổng doanh số. Trong trường hợp của chúng tôi, chúng tôi sẽ chọn 3 sản phẩm bán chạy nhất theo tổng doanh số bán hàng.
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 | +---------+-------------+
Hãy để chúng tôi xem xét truy vấn trên một cách chi tiết. Về cơ bản, chúng tôi NHÓM THEO sản phẩm cột và tổng hợp số tiền sử dụng hàm SUM.
Chúng tôi tiếp tục ĐẶT HÀNG BẰNG tổng (số tiền) theo thứ tự giảm dần để các sản phẩm bán chạy nhất được liệt kê ở trên cùng. Chúng tôi cũng sử dụng mệnh đề LIMIT 3 để chỉ chọn 3 hàng trên cùng của kết quả.
Sản phẩm bán chạy nhất theo Tổng khối lượng
Đây là truy vấn SQL để lấy các sản phẩm bán chạy nhất theo tổng khối lượng, tức là số lượng bán ra.
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 | +---------+---------------+
Bây giờ, chúng ta sẽ xem xét trường hợp thứ hai. Đôi khi, thông tin sản phẩm và thông tin bán hàng có trong các bảng khác nhau.
Giả sử bạn có hai bảng product (id, product_name) và doanh số bán hàng (id, product_id, order_date, number)
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 | +------+------------+------------+--------+
Phần thưởng đọc:Cách sử dụng COALESCE trong MySQL
Sản phẩm bán chạy nhất theo tổng doanh số
Đây là truy vấn SQL để lấy các sản phẩm bán chạy nhất theo tổng doanh số. Về cơ bản, chúng tôi sẽ kết hợp hai bảng để lấy tên sản phẩm và tổng doanh số bán hàng trong kết quả truy vấn.
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 | +--------------+-------------+
Hãy để chúng tôi xem xét truy vấn trên một cách chi tiết. Chúng tôi CHỌN product_name và sum (số tiền) các cột từ sản phẩm và bán hàng những cái bàn. Chúng tôi kết hợp hai bảng bằng cách sử dụng product_id cột từ bán hàng bảng và id cột từ sản phẩm bảng, GROUP BY sản phẩm cột và tổng hợp số tiền sử dụng hàm SUM.
Chúng tôi tiếp tục ĐẶT HÀNG BẰNG tổng (số tiền) theo thứ tự giảm dần để các sản phẩm bán chạy nhất được liệt kê ở trên cùng. Chúng tôi cũng sử dụng mệnh đề LIMIT 3 để chỉ chọn 3 hàng trên cùng của kết quả.
Phần thưởng đọc:Cách truy vấn cột JSON trong MySQL
Sản phẩm bán chạy nhất theo tổng khối lượng
Đây là truy vấn SQL để lấy các sản phẩm bán chạy nhất theo tổng khối lượng, tức là số lượng bán ra.
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 | +--------------+---------------+
Nhận các sản phẩm bán chạy nhất bằng Ubiq
Công cụ Báo cáo Ubiq hỗ trợ tất cả các truy vấn SQL ở trên và giúp bạn dễ dàng hình dung kết quả SQL theo những cách khác nhau. Nó cũng cho phép bạn tạo trang tổng quan và biểu đồ từ dữ liệu MySQL. Đây là truy vấn SQL để lấy các sản phẩm bán chạy nhất, trong Ubiq.
Trên thực tế, sau khi chạy truy vấn, bạn có thể chỉ cần nhấp vào một loại trực quan hóa để vẽ kết quả trong biểu đồ.
Cần một công cụ báo cáo cho MySQL? Ubiq giúp dễ dàng trực quan hóa dữ liệu trong vài phút và theo dõi trong trang tổng quan thời gian thực. Thử nó ngay hôm nay!