Điều quan trọng là phải tính toán lợi nhuận cho mỗi doanh nghiệp. Nếu trang web hoặc cửa hàng trực tuyến của bạn chạy trên MySQL, thì bạn có thể dễ dàng tính lợi nhuận trong MySQL. Trong bài viết này, chúng ta sẽ xem xét cách tính toán ký quỹ trong MySQL, tính ký quỹ cho từng sản phẩm và cũng tính toán ký quỹ hàng ngày.
Cách tính toán ký quỹ trong MySQL
Giả sử bạn có hai bảng mua hàng (order_id, product_id, số lượng, giá_giá, order_date ) và doanh số bán hàng (order_id, product_id, số lượng, giá_bán, order_date) chứa chi tiết về thông tin mua và bán của từng sản phẩm.
mysql> create table purchases(order_id int, product_id int, quantity int, cost_price int, order_date date); mysql> insert into purchases(order_id, product_id, quantity, cost_price, order_date) values(1,101,10,30,'2021-01-01'), (2,102,15,50,'2021-01-02'), (3,101,30,80,'2021-01-03'), (4,103,20,35,'2021-01-04'), (5,105,10,50,'2021-01-05'), (6,104,17,40,'2021-01-06'), (7,101,30,45,'2021-01-07'), (8,102,60,60,'2021-01-08'), (9,110,19,70,'2021-01-09'), (10,108,20,80,'2021-01-10'); mysql> select * from purchases; +----------+------------+----------+------------+------------+ | order_id | product_id | quantity | cost_price | order_date | +----------+------------+----------+------------+------------+ | 1 | 101 | 10 | 30 | 2021-01-01 | | 2 | 102 | 15 | 50 | 2021-01-02 | | 3 | 101 | 30 | 80 | 2021-01-03 | | 4 | 103 | 20 | 35 | 2021-01-04 | | 5 | 105 | 10 | 50 | 2021-01-05 | | 6 | 104 | 17 | 40 | 2021-01-06 | | 7 | 101 | 30 | 45 | 2021-01-07 | | 8 | 102 | 60 | 60 | 2021-01-08 | | 9 | 110 | 19 | 70 | 2021-01-09 | | 10 | 108 | 20 | 80 | 2021-01-10 | +----------+------------+----------+------------+------------+ mysql> create table sales(order_id int, product_id int, quantity int, selling_price int, order_date date); mysql> insert into sales(order_id, product_id, quantity, selling_price, order_date) values(1,101,8,70,'2021-01-01'), (2,102,10,150,'2021-01-02'), (3,101,25,280,'2021-01-03'), (4,103,20,135,'2021-01-04'), (5,105,10,350,'2021-01-05'), (6,104,15,140,'2021-01-06'), (7,101,20,65,'2021-01-07'), (8,102,50,160,'2021-01-08'), (9,110,15,120,'2021-01-09'), (10,108,15,180,'2021-01-10'); mysql> select * from sales; +----------+------------+----------+---------------+------------+ | order_id | product_id | quantity | selling_price | order_date | +----------+------------+----------+---------------+------------+ | 1 | 101 | 8 | 70 | 2021-01-01 | | 2 | 102 | 10 | 150 | 2021-01-02 | | 3 | 101 | 25 | 280 | 2021-01-03 | | 4 | 103 | 20 | 135 | 2021-01-04 | | 5 | 105 | 10 | 350 | 2021-01-05 | | 6 | 104 | 15 | 140 | 2021-01-06 | | 7 | 101 | 20 | 65 | 2021-01-07 | | 8 | 102 | 50 | 160 | 2021-01-08 | | 9 | 110 | 15 | 120 | 2021-01-09 | | 10 | 108 | 15 | 180 | 2021-01-10 | +----------+------------+----------+---------------+------------+
Chúng tôi sẽ sử dụng các bảng này để tính toán lợi nhuận trong MySQL. Đây là công thức ký quỹ.
tỷ suất lợi nhuận =(số lượng bán ra * giá bán - số lượng mua * giá vốn ) / số lượng đã bán * giá bán
Khi chúng tôi nhận được tổng doanh thu và tổng chi phí, bạn có thể sửa đổi công thức trên theo yêu cầu của mình để tính toán tỷ suất lợi nhuận gộp, tỷ suất lợi nhuận ròng, v.v.
Tính tổng số tiền ký quỹ trong MySQL
Đây là truy vấn SQL để tính toán tổng biên lợi nhuận.
mysql> select (total_sales-total_cost)*100/total_sales as total_margin from (select sum(quantity*cost_price) as total_cost from purchases) as total_purchases, (select sum(quantity*selling_price) as total_sales from sales) as total_sales; +--------------+ | total_margin | +--------------+ | 57.6059 | +--------------+
Hãy để chúng tôi xem xét chi tiết truy vấn trên.
Chúng tôi tính toán tổng chi phí và tổng doanh thu một cách riêng biệt bằng cách sử dụng các truy vấn phụ
select sum(quantity*cost_price) as total_cost from purchases
và
select sum(quantity*selling_price) as total_sales from sales
và sau đó sử dụng kết quả của các truy vấn phụ này để tính toán tổng biên lợi nhuận.
Phần thưởng đã đọc:Cách nhận được nhiều số lượng trong MySQL
Tính lợi nhuận sản phẩm trong MySQL
Đây là truy vấn SQL để tính toán tỷ suất lợi nhuận cho từng sản phẩm.
mysql> select total_purchases.product_id, (total_sales-total_cost)*100/total_sales as total_margin from (select product_id,sum(quantity*cost_price) as total_cost from purchases group by product_id) as total_purchases, (select product_id,sum(quantity*selling_price) as total_sales from sales group by product_id) as total_sales where total_purchases.product_id=total_sales.product_id; +------------+--------------+ | product_id | total_margin | +------------+--------------+ | 101 | 54.2889 | | 102 | 54.2105 | | 103 | 74.0741 | | 104 | 67.6190 | | 105 | 85.7143 | | 108 | 40.7407 | | 110 | 26.1111 | +------------+--------------+
Trong truy vấn trên, chúng tôi sử dụng hai truy vấn phụ sau để tính toán riêng doanh thu và chi phí cho từng sản phẩm.
select product_id,sum(quantity*cost_price) as total_cost from purchases group by product_id
và
select product_id,sum(quantity*selling_price) as total_sales from sales group by product_id
Sau đó, chúng tôi kết hợp kết quả của hai truy vấn phụ này dựa trên product_id để tính toán tổng biên lợi nhuận cho từng sản phẩm.
Tính lợi nhuận hàng ngày trong MySQL
Tương tự, bạn có thể tính toán tỷ suất lợi nhuận hàng ngày bằng cách sử dụng truy vấn SQL sau.
mysql> select total_purchases.order_date,(total_sales-total_cost)*100/total_sales as total_margin from (select date(order_date) as order_date, sum(quantity*cost_price) as total_cost from purchases group by date(order_date) ) as total_purchases, (select date(order_date) as order_date, sum(quantity*selling_price) as total_sales from sales group by date(order_date) ) as total_sales where total_purchases.order_date=total_sales.order_date; +------------+--------------+ | order_date | total_margin | +------------+--------------+ | 2021-01-01 | 46.4286 | | 2021-01-02 | 50.0000 | | 2021-01-03 | 65.7143 | | 2021-01-04 | 74.0741 | | 2021-01-05 | 85.7143 | | 2021-01-06 | 67.6190 | | 2021-01-07 | -3.8462 | | 2021-01-08 | 55.0000 | | 2021-01-09 | 26.1111 | | 2021-01-10 | 40.7407 | +------------+--------------+
Trong truy vấn trên, chúng tôi sử dụng hai truy vấn phụ sau đây để tính toán riêng doanh thu và chi phí cho mỗi ngày.
select date(order_date) as order_date,sum(quantity*cost_price) as total_cost from purchases group by date(order_date)
và
select date(order_date) as order_date,sum(quantity*selling_price) as total_sales from sales group by date(order_date)
Sau đó, chúng tôi kết hợp kết quả của hai truy vấn phụ này dựa trên order_date để tính toán tổng số tiền ký quỹ cho mỗi ngày.
Tính tiền ký quỹ trong 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 để tính toán lợi nhuận hàng ngày 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!