Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да изчислим маржа в MySQL

Важно е да се изчисли печалбата за всеки бизнес. Ако вашият уебсайт или онлайн магазин работи на MySQL, тогава можете лесно да изчислите марж в MySQL. В тази статия ще разгледаме как да изчислим маржа в MySQL, да изчислим маржа за всеки продукт и също да изчислим дневния марж.


Как да изчислим маржа в MySQL

Да кажем, че имате две таблици покупки (идентификатор на поръчката, идентификатор на продукт, количество, цена_разход, дата_на_поръчка ) и продажби(идентификатор на поръчката, идентификатор на продукт, количество, продажна_цена, дата_на_поръчка) които съдържат подробности за информацията за покупка и продажба на всеки продукт.

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 |
+----------+------------+----------+---------------+------------+

Ще използваме тези таблици за изчисляване на марж в MySQL. Ето формулата за марж.

марж на печалба =(продадено количество*продажна цена – закупено количество*себестойност )/продадено количество*продажна цена

След като получим общите продажби и общите разходи, можете да промените горната формула според вашето изискване за изчисляване на брутния марж, нетния марж и т.н.


Изчислете общия марж в MySQL

Ето SQL заявката за изчисляване на общия марж на печалба.

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 |
 +--------------+

Нека разгледаме по-подробно горната заявка.

Ние изчисляваме общите разходи и общите продажби отделно, като използваме подзаявки

select sum(quantity*cost_price) as total_cost from purchases

и

select sum(quantity*selling_price) as total_sales from sales

и след това използвайте резултата от тези подзаявки, за да изчислите общия марж на печалба.

Бонус за четене:Как да получите няколко броя в MySQL


Изчислете маржа на продукта в MySQL

Ето SQL заявката за изчисляване на маржа на печалба за всеки продукт.

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 |
 +------------+--------------+

В горната заявка използваме следните две подзаявки, за да изчислим отделно продажбите и разходите за всеки продукт.

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

След това свързваме резултата от тези две подзаявки въз основа на product_id колона за изчисляване на общия марж на печалба за всеки продукт.


Изчислете дневния марж в MySQL

По същия начин можете да изчислите дневния марж на печалба, като използвате следната SQL заявка.

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 |
 +------------+--------------+

В горната заявка използваме следните две подзаявки, за да изчислим отделно продажбите и разходите за всеки ден.

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)

След това свързваме резултата от тези две подзаявки въз основа на order_date колона за изчисляване на общия марж за всеки ден.


Изчислете маржа в Ubiq

Инструментът за отчитане на Ubiq поддържа всички горепосочени SQL заявки и улеснява визуализирането на SQL резултатите по различни начини. Той също така ви позволява да създавате табла за управление и диаграми от MySQL данни. Ето SQL заявката за ежедневно изчисляване на маржа в Ubiq.

Всъщност, след като изпълните заявката, можете просто да щракнете върху тип визуализация, за да начертаете резултата в диаграма.

Нуждаете се от инструмент за отчитане за MySQL? Ubiq улеснява визуализирането на данни за минути и наблюдение в табла за управление в реално време. Опитайте го днес!

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да импортирате CSV файл в MySQL таблица

  2. Предупреждение:mysql_result() очаква параметър 1 да бъде ресурс, като е дадено булево

  3. MySQL – Коригиране на грешка – Грешка в базата данни на WordPress Дублиран запис за ключ PRIMARY за заявка INSERT INTO wp_options

  4. Как да поправя таблица на InnoDB?

  5. Как да настроите набора от символи и съпоставяне на таблица в MySQL