En ocasiones necesitamos hacer consultas o queries en MySQL con PHP usando fechas. Por ejemplo, consultar las ventas de hoy, o las ventas del mes.

También puede que necesitemos consultar con fechas en un rango, ya sea un año, de hoy, de unas horas, etcétera.

Por ello es que vengo a mostrar hoy cómo hacer consultas con fechas en MySQL usando date y strtotime.

Consultar con fechas en MySQL y PHP

Tomemos un ejemplo sencillo de ventas en donde tenemos una tabla de ventas que tiene la fecha y hora en la que la misma fue realizada. Al consultar todos los datos se ve así:

Ahora veremos cómo consultar con determinadas fechas. Veamos el ejemplo para consultar las ventas del día 6 de noviembre del 2019.

Usar PHP para las fechas

Lo único que necesitamos son dos fechas: la del inicio y la del fin. La de inicio la proporciona el usuario o nosotros tomamos la fecha de hoy con:

$fecha = date("Y-m-d") . " 00:00:00";

Así tenemos la fecha de medianoche del inicio. Algo como 2019-11-06 00:00:00

Ahora el “problema” radica en el día siguiente, pues debemos consultar todas las del día, sin pasarnos y sin que nos falte (incluso si una venta se hizo a las 23:59)

Para ello, usamos strtotime y obtenemos la fecha del siguiente día, así:

La magia para sumar fechas es usar strtotime y +1 day tomando como fecha para los cálculos la fecha de inicio.

Ahora que ya tenemos ambas fechas podemos hacer la consulta así (fíjate que primero es >= y después es <):

Relacionado:  PHP - Formulario con dos botones

De modo que tome todas las fechas de hoy pero cuya fecha no sea mayor ni igual a mañana. Como las fechas se toman como cadena, el orden será respetado.

Con la siguiente salida:

Poniendo todo junto

Así que si usamos PDO con una conexión así:

La consulta quedaría algo así:

De esa manera evitamos inyecciones SQL y hacemos una consulta por fecha. Con este enfoque podríamos tomar meses, días, años, etcétera.


Estoy disponible para trabajar en tu proyecto o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.
Si el post fue de tu agrado muestra tu apoyo compartiéndolo, suscribiéndote al blog, siguiéndome o realizando una donación.

Suscribir por correo

Ingresa tu correo y recibirás mis últimas entradas sobre programación, open source, bases de datos y todo lo relacionado con informática

Únete a otros 518 suscriptores


parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

0 Comments

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

A %d blogueros les gusta esto: