Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách tính tiền ký quỹ trong MySQL

Đ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

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

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)

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!

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để chuẩn bị câu lệnh cho truy vấn cập nhật?

  2. Cột bảng thay thế MySQL

  3. PDO tìm nạp một cột từ bảng thành mảng 1 chiều

  4. Làm cách nào để xem các chỉ mục cho cơ sở dữ liệu hoặc bảng trong MySQL?

  5. JSON_KEYS () - Trả lại các khóa từ một đối tượng JSON trong MySQL