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

Cómo obtener registros del mes actual en MySQL

Ayuda a obtener registros del mes actual en MySQL para informes y análisis de datos. Puede usarlo para obtener datos de ventas del mes actual, número de suscripciones en el mes actual y otra información útil. Aquí se explica cómo obtener filas del mes actual en MySQL.

Cómo obtener registros del mes actual en MySQL

Estos son los pasos para obtener los registros del mes actual en MySQL. También lo usaremos para conseguir nuevos clientes en el mes.

Supongamos que tiene la siguiente tabla sales(order_date, sale, orders) que contiene el número diario de pedidos y el monto de la venta.

mysql> select * from sales;
+------------+------+--------+
| order_date | sale | orders |
+------------+------+--------+
| 2020-04-28 |  300 |     10 |
| 2020-04-29 |  250 |     15 |
| 2020-04-30 |  250 |     12 |
| 2020-05-01 |  250 |     14 |
| 2020-05-02 |  150 |     20 |
| 2020-05-03 |  300 |     21 |
| 2020-05-04 |  200 |     15 |
| 2020-05-05 |  200 |     17 |
| 2020-05-06 |  250 |     12 |
| 2020-05-07 |  150 |     15 |
| 2020-05-08 |  300 |     12 |
| 2020-05-09 |  200 |     18 |
+------------+------+--------+

Lectura adicional:Cómo importar CSV a MySQL Workbench

Cómo obtener datos de ventas del mes actual en MySQL

Aquí está la consulta SQL para obtener registros del mes actual en MySQL

mysql> select * from sales
       where MONTH(order_date)=MONTH(now())
       and YEAR(order_date)=YEAR(now());
+------------+------+--------+
| order_date | sale | orders |
+------------+------+--------+
| 2020-05-01 |  250 |     14 |
| 2020-05-02 |  150 |     20 |
| 2020-05-03 |  300 |     21 |
| 2020-05-04 |  200 |     15 |
| 2020-05-05 |  200 |     17 |
| 2020-05-06 |  250 |     12 |
| 2020-05-07 |  150 |     15 |
| 2020-05-08 |  300 |     12 |
| 2020-05-09 |  200 |     18 |
+------------+------+--------+

En la consulta anterior, usamos la función del sistema ahora() para obtener la fecha y hora actual. Luego obtenemos las filas del mes actual en MySQL filtrando las filas que tienen el mismo mes y año que la fecha y hora actual. MONTH() y YEAR() son funciones incorporadas de MySQL para obtener el número de mes y año a partir de una fecha determinada.

Lectura adicional:Cómo crear un histograma en MySQL

Si su columna de fecha, es decir, order_date está indexado, entonces es recomendable no utilizar ninguna función en él. De lo contrario, tardará mucho tiempo en ejecutarse. En su lugar, puede usar la siguiente consulta SQL para obtener registros del mes actual en MySQL.

mysql> SELECT * FROM sales
      WHERE order_date >= (LAST_DAY(NOW()) + INTERVAL 1 DAY - INTERVAL 1 MONTH)
      AND order_date <  (LAST_DAY(NOW()) + INTERVAL 1 DAY);
+------------+------+--------+
| order_date | sale | orders |
+------------+------+--------+
| 2020-05-01 |  250 |     14 |
| 2020-05-02 |  150 |     20 |
| 2020-05-03 |  300 |     21 |
| 2020-05-04 |  200 |     15 |
| 2020-05-05 |  200 |     17 |
| 2020-05-06 |  250 |     12 |
| 2020-05-07 |  150 |     15 |
| 2020-05-08 |  300 |     12 |
| 2020-05-09 |  200 |     18 |
+------------+------+--------+

Después de obtener registros del mes actual en MySQL, puede usar una herramienta de gráficos para representarlo en un gráfico atractivo como se muestra a continuación y compartirlo con su equipo. Aquí hay un gráfico de líneas creado con el software de panel Ubiq

Lectura adicional:Cómo calcular la tasa de conversión en MySQL

Cómo obtener suscripciones y nuevos usuarios en el mes actual en MySQL

Del mismo modo, también puede obtener nuevos registros y usuarios en el mes actual en MySQL. Supongamos que tiene la siguiente tabla Users(user_id, date_joined) que contiene datos de registro.

mysql> select * from users;
+-------------+---------+
| date_joined | user_id |
+-------------+---------+
| 2020-04-28  |     213 |
| 2020-04-28  |     214 |
| 2020-04-30  |     215 |
| 2020-04-28  |     216 |
| 2020-04-28  |     217 |
| 2020-04-30  |     218 |
| 2020-04-28  |     219 |
| 2020-04-28  |     220 |
| 2020-04-30  |     221 |
| 2020-05-01  |     222 |
| 2020-05-01  |     222 |
| 2020-05-01  |     223 |
| 2020-05-04  |     224 |
| 2020-05-04  |     225 |
| 2020-05-04  |     226 |
| 2020-05-04  |     226 |
| 2020-05-04  |     227 |
| 2020-05-04  |     228 |
| 2020-05-05  |     229 |
| 2020-05-05  |     230 |
| 2020-05-05  |     231 |
| 2020-05-05  |     232 |
| 2020-05-06  |     233 |
| 2020-05-06  |     234 |
+-------------+---------+

Aquí está la consulta SQL para obtener nuevos registros y usuarios diarios en el mes actual en MySQL.

mysql> select date(date_joined),count(*) from users
       where MONTH(date_joined)=MONTH(now())
       and YEAR(date_joined)=YEAR(now())
       group by date(date_joined);
+-------------------+----------+
| date(date_joined) | count(*) |
+-------------------+----------+
| 2020-05-01        |        3 |
| 2020-05-04        |        6 |
| 2020-05-05        |        4 |
| 2020-05-06        |        2 |
+-------------------+----------+

También puede usar esta consulta SQL para obtener el recuento de usuarios en un mes o contar los nuevos usuarios en el último mes. Simplemente elimine date(date_joined) de la cláusula select y elimine la cláusula group by para obtener el recuento total.

mysql> select count(*) from users
       where MONTH(date_joined)=MONTH(now())
       and YEAR(date_joined)=YEAR(now());

Lectura adicional:Cómo completar las fechas que faltan en MySQL

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

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.