sql >> Base de Datos >  >> RDS >> Mysql

Cómo calcular los ingresos en MySQL

Es importante calcular los ingresos de cada negocio. Aquí se explica cómo calcular los ingresos en MySQL. Puede usarlo para calcular los ingresos diarios, los ingresos mes a mes, los ingresos año a año, los ingresos de los últimos 12 meses, del mes actual y más. Analizaremos cada caso de uso en detalle.

Cómo calcular los ingresos en MySQL

Estos son los pasos para calcular los ingresos en MySQL.

Digamos que tiene 2 tablas products(product_id, product_name, price) y pedidos(fecha_pedido, id_producto, cantidad).

mysql> create table products(product_id int,product_name varchar(255),price int);
mysql> insert into products(product_id,product_name,price) 
       values(1,'iPhone 11',400),(2,'Samsung Galaxy A50',250);

mysql> select * from products;
+------------+--------------------+-------+
| product_id | product_name       | price |
+------------+--------------------+-------+
|          1 | iPhone 11          |   400 |
|          2 | Samsung Galaxy A50 |   250 |
+------------+--------------------+-------+


mysql> create table orders(order_date date,product_id int,quantity int);

mysql> insert into orders(order_date,product_id,quantity) 
       values('2020-05-01',1,23),('2020-05-01',2,35),
       ('2020-05-02',1,45),('2020-05-02',2,23),('2020-05-03',1,19),
       ('2020-05-03',2,15),('2020-05-04',1,34),('2020-05-04',2,56);

mysql> select * from orders;
+------------+------------+----------+
| order_date | product_id | quantity |
+------------+------------+----------+
| 2020-05-01 |          1 |       23 |
| 2020-05-01 |          2 |       35 |
| 2020-05-02 |          1 |       45 |
| 2020-05-02 |          2 |       23 |
| 2020-05-03 |          1 |       19 |
| 2020-05-03 |          2 |       15 |
| 2020-05-04 |          1 |       34 |
| 2020-05-04 |          2 |       56 |
+------------+------------+----------+

Para nuestro ejemplo, los ingresos por pedido son básicamente precio * cantidad. Veremos diferentes casos de uso para calcular los ingresos en MySQL

Cómo calcular los ingresos diarios en MySQL

Aquí está la consulta SQL para calcular los ingresos diarios en MySQL.

mysql> select date(order_date),sum(price*quantity) 
from products,orders 
where products.product_id=orders.product_id 
group by date(order_date);
+------------------+---------------------+
| date(order_date) | sum(price*quantity) |
+------------------+---------------------+
| 2020-05-01       |               17950 |
| 2020-05-02       |               23750 |
| 2020-05-03       |               11350 |
| 2020-05-04       |               27600 |
+------------------+---------------------+

En la consulta SQL anterior, multiplicamos precio x cantidad para calcular los ingresos por pedido. Desde precio &cantidad están en tablas diferentes, unimos productospedidos  tablas usando la condición product.product_id=orders.product_id . Luego usamos la función AGRUPAR por FECHA para agregar los ingresos por pedidos y obtener los ingresos diarios.

Después de calcular los ingresos en MySQL, puede usar una herramienta de informes para trazar estos datos en un gráfico de barras o un tablero y compartirlos con su equipo. Este es un ejemplo de un gráfico de barras que muestra los ingresos diarios, creado con Ubiq.

Lectura adicional:Cómo crear un histograma en MySQL

Cómo calcular los ingresos mes a mes en MySQL

Aquí está la consulta SQL para calcular los ingresos totales por mes en MySQL. Solo necesita reemplazar la función FECHA en la consulta anterior con la función MES

mysql> select month(order_date),sum(price*quantity) 
from products,orders 
where products.product_id=orders.product_id 
group by month(order_date);
+------------------+---------------------+
| month(order_date)| sum(price*quantity) |
+------------------+---------------------+
|          1       |              127950 |
|          2       |              223750 |
|          3       |              311350 |
|          4       |              427600 |
+------------------+---------------------+

La consulta anterior mostrará los números de los meses junto con sus ingresos. Si desea mostrar los nombres de los meses, use la función DATE_FORMAT 

mysql> select date_format(order_date,'%b'),sum(price*quantity) 
from products,orders 
where products.product_id=orders.product_id 
group by date_format(order_date,'%b');
+------------------+---------------------+
| month(order_date)| sum(price*quantity) |
+------------------+---------------------+
|        Jan       |              127950 |
|        Feb       |              223750 |
|        Mar       |              311350 |
|        Apr       |              427600 |
+------------------+---------------------+

Cómo calcular los ingresos año por año en MySQL

Aquí está la consulta SQL para calcular los ingresos anuales en MySQL. Solo necesita reemplazar la función FECHA en la consulta anterior con la función AÑO

mysql> select year(order_date),sum(price*quantity) 
from products,orders 
where products.product_id=orders.product_id 
group by year(order_date);

Lectura adicional:Cómo importar CSV a MySQL Workbench

Cómo calcular los ingresos de los últimos 12 meses en MySQL

Aquí está la consulta SQL para calcular los ingresos mensuales de los últimos 12 meses. Puede usar la función INTERVALO para calcular los ingresos en MySQL, durante los últimos 12 meses.

mysql> select month(order_date),sum(price*quantity) 
from products,orders 
where products.product_id=orders.product_id 
and order_date > now() - INTERVAL 12 month 
group by month(order_date);

En la consulta anterior, filtramos los datos posteriores a un intervalo anterior de 12 meses.

Cómo calcular los ingresos de los últimos 3 meses en MySQL

Aquí está la consulta SQL para calcular los ingresos mensuales de los últimos 3 meses. Puede usar la función INTERVALO para calcular los ingresos en MySQL, durante los últimos 3 meses.

mysql> select month(order_date),sum(price*quantity) 
from products,orders 
where products.product_id=orders.product_id 
and order_date > now() - INTERVAL 3 month 
group by month(order_date);

En la consulta anterior, filtramos los datos posteriores a un intervalo anterior de 3 meses.

Lectura adicional:Cómo obtener los datos de ventas de los últimos 3 meses en MySQL

Cómo calcular los ingresos del mes actual en MySQL

Aquí está la consulta SQL para calcular los ingresos mensuales del mes actual. Puede usar la función INTERVALO para calcular los ingresos en MySQL, para el mes actual.

mysql> select month(order_date),sum(price*quantity) 
from products,orders 
where products.product_id=orders.product_id 
and order_date >= (LAST_DAY(NOW()) + INTERVAL 1 DAY - INTERVAL 1 MONTH) 
and order_date < (LAST_DAY(NOW()) + INTERVAL 1 DAY) 
group by month(order_date);

En la consulta anterior, filtramos los datos posteriores a un intervalo anterior del mes actual.

Lectura adicional:Cómo obtener registros del mes actual en MySQL

Cómo calcular los ingresos del trimestre actual en MySQL

Aquí está la consulta SQL para calcular los ingresos mensuales del mes actual. Puede usar la función TRIMESTRE para calcular los ingresos en MySQL, para el trimestre actual.

mysql> select month(order_date),sum(price*quantity) 
from products,orders 
where products.product_id=orders.product_id 
and QUARTER(order_date)=QUARTER(now()) 
and YEAR(order_date)=YEAR(now()) 
group by month(order_date);

En la consulta anterior, filtramos los datos donde el trimestre de order_date es igual al trimestre de la fecha actual.

Con suerte, las consultas anteriores pueden ayudarlo a calcular los ingresos en MySQL. Si desea crear gráficos, paneles e informes desde la base de datos MySQL, puede probar Ubiq. Ofrecemos una prueba gratuita de 14 días.