sql >> Database >  >> RDS >> Mysql

Omzet berekenen in MySQL

Het is belangrijk om de omzet voor elk bedrijf te berekenen. Hier leest u hoe u de omzet in MySQL kunt berekenen. U kunt het gebruiken om de dagelijkse inkomsten, de maandelijkse inkomsten, de jaarlijkse inkomsten, de inkomsten voor de afgelopen 12 maanden, de huidige maand en meer te berekenen. We zullen elk gebruik in detail bekijken.

Inkomsten berekenen in MySQL

Dit zijn de stappen om de opbrengst in MySQL te berekenen.

Stel dat u 2 tabellen producten(product_id, product_name, prijs) . heeft en bestellingen(order_date,product_id, hoeveelheid).

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

Voor ons voorbeeld is de opbrengst per bestelling in feite prijs * hoeveelheid. We zullen verschillende gebruiksscenario's bekijken om de inkomsten in MySQL te berekenen

Hoe de dagelijkse omzet in MySQL te berekenen

Hier is de SQL-query om de dagelijkse inkomsten in MySQL te berekenen.

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

In de bovenstaande SQL-query vermenigvuldigen we prijs x hoeveelheid om de opbrengst per bestelling te berekenen. Sinds prijs &hoeveelheid in verschillende tabellen staan, voegen we ons bij producten en bestellingen  tabellen met de voorwaarde product.product_id=orders.product_id . Vervolgens GROUPEREN we op DATUM-functie om de orderinkomsten te aggregeren en dagelijkse inkomsten te krijgen.

Nadat u de opbrengst in MySQL heeft berekend, kunt u een rapportagetool gebruiken om deze gegevens in een staafdiagram of dashboard te plotten en met uw team te delen. Hier is een voorbeeld van een staafdiagram dat de dagelijkse inkomsten laat zien, gemaakt met Ubiq.

Bonus Lezen:Histogram maken in MySQL

Hoe u de omzet van maand tot maand in MySQL kunt berekenen

Hier is de SQL-query om de totale omzet per maand in MySQL te berekenen. U hoeft alleen de DATE-functie in bovenstaande query te vervangen door de MAAND-functie

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

De bovenstaande zoekopdracht toont maandnummers met hun inkomsten ernaast. Als u maandnamen wilt weergeven, gebruikt u de DATE_FORMAT-functie

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

Hoe u van jaar tot jaar omzet in MySQL kunt berekenen

Hier is de SQL-query om de jaarlijkse omzet in MySQL te berekenen. U hoeft alleen de DATE-functie in de bovenstaande query te vervangen door de YEAR-functie

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

Bonus lezen:CSV importeren in MySQL Workbench

Inkomsten berekenen voor de afgelopen 12 maanden in MySQL

Hier is de SQL-query om de maandelijkse inkomsten voor de afgelopen 12 maanden te berekenen. U kunt de INTERVAL-functie gebruiken om de inkomsten in MySQL voor de afgelopen 12 maanden te berekenen.

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);

In de bovenstaande zoekopdracht filteren we gegevens na een interval van 12 maanden in het verleden.

Inkomsten berekenen voor de afgelopen 3 maanden in MySQL

Hier is de SQL-query om de maandelijkse inkomsten voor de afgelopen 3 maanden te berekenen. U kunt de INTERVAL-functie gebruiken om de inkomsten in MySQL voor de afgelopen 3 maanden te berekenen.

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);

In de bovenstaande zoekopdracht filteren we gegevens na een interval van 3 maanden in het verleden.

Bonus lezen:hoe u de verkoopgegevens van de afgelopen 3 maanden in MySQL kunt krijgen

Inkomsten berekenen voor de huidige maand in MySQL

Hier is de SQL-query om de maandelijkse inkomsten voor de huidige maand te berekenen. U kunt de INTERVAL-functie gebruiken om de inkomsten in MySQL voor de huidige maand te berekenen.

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);

In de bovenstaande zoekopdracht filteren we gegevens die na een afgelopen interval van de huidige maand vallen.

Bonus lezen:hoe u records van de huidige maand in MySQL kunt krijgen

Inkomsten berekenen voor het huidige kwartaal in MySQL

Hier is de SQL-query om de maandelijkse inkomsten voor de huidige maand te berekenen. U kunt de QUARTER-functie gebruiken om de omzet in MySQL voor het huidige kwartaal te berekenen.

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);

In de bovenstaande zoekopdracht filteren we gegevens waarbij een kwart van order_date is hetzelfde als kwart van de huidige datum.

Hopelijk kunnen de bovenstaande vragen u helpen de inkomsten in MySQL te berekenen. Als u grafieken, dashboards en rapporten wilt maken vanuit de MySQL-database, kunt u Ubiq proberen. We bieden een gratis proefperiode van 14 dagen aan.

  1. Verschil tussen LockModeType Jpa

  2. Inleiding tot SQL Server

  3. De beste manier om geneste case-statementlogica in SQL Server uit te voeren

  4. Hoe LocalTimeStamp() werkt in PostgreSQL