Sentencia BETWEEN con fechas
En este artículo vamos a ver un ejemplo de como crear una consulta SQL para mostrar registros que se produjeron en una fecha determinada. Vamos a limitar tanto el inicio como el final, es decir, un periodo cerrado.
Imaginemos que tenemos una Web donde se pueden registrar usuarios. Estos usuarios se guardan en nuestra base de datos y guardando también la fecha de registro.
Ahora bien, necesitamos saber cuantos o que usuarios se registraron entre un periodo de tiempo. Podemos emplear la siguiente consulta:
SELECT name, lastname FROM users WHERE date_add BETWEEN '2012-05-01' AND '2012-06-01'
En la consulta anterior estamos seleccionando aquellos usuarios que se registraron entre las fechas del 1 de mayo del 2012 y el 1 de junio del 2012 (los registro del mes de mayo).
Si quisieramos mostrar todos los registros hasta el mes de mayo:
SELECT name, lastname FROM users WHERE date_add < '2012-05-01'
Y si quisieramos mostrar todos los registros que se realizaron después del mes de mayo:
SELECT name, lastname FROM users WHERE date_add > '2012-05-31'
SELECT nom_usuario, fecha_acceso, fecha_salida, fecha_ultima_accion
FROM tbl_sesiones_usuarios
WHERE (nom_usuario = ‘carsosa’) and (fecha_acceso between ‘2021-02-03’ and ‘2021-02-04’ );
quiero llevar esta consulta a mi codigo php para hacer una busqueda quien me ayuda
SELECT doc_Cliente, nombre_Cliente
FROM cliente
WHERE doc_cliente IN (SELECT doc_Cliente
FROM Facturas
WHERE Fecha BETWEEN @Fecha and @Fecha)
que significa esto
Buenos dias
quisiera saber como filtrar por un mes anterior a la fecha actual y que esa consulta quede de manera automática, es decir que si en enero consulto ese query me traiga las información de Diciembre
Hola,
Dejaré la pregunta abierta por si alguien tuviera una solución.
Saludos
Intenta sacar las fechas desde la misma tabla para que el ejemplo sirva
yo lo estoy haciendo de esta manera
$fecha1=$_POST[«fecha1»];
$fecha2=$_POST[«fecha2»];
$sql = «select * from historial »
. «where »
. » fcmod between’$fecha1′ and ‘$fecha2′»
. «Order by fcmod ASC «;
pero tengo un problema que si lo le coloca ejemplo fecha1=12/10/2014 y fecha2=12/10/2017 solo m muestra los registros que se encuentren en esos meses mas no todos los que entren dentro de ese rango que estare haciendo mal.??
y si además de mostrarlos quiero que me los ordene de menor a mayor ?
tengo esta consulta
SELECT * FROM `clientes` WHERE (’11/05/16′ <= `fechainicio` AND `fechainicio` <= '19/06/17')
En principio sería muy sencillo. Tan solo debes agregar el order by:
SELECT * FROM `clientes` WHERE (’11/05/16′ <= `fechainicio` AND `fechainicio` <= '19/06/17') ORDER BY fechainicio ASC
Hola yo tengo una tabla de efemérides en mi base de datos y me gustaría visualizar cada día los registros de ese día aunque estén ingresados en diferentes años porque de la forma expuesta hay que estar retocando el código para ver una fecha.
Gracias por adelantado.
esta perfect.. pero xq no hacer recibiendo variables desde un rango de fechasssssss :S
Despite our meetings and discussions, I am having trouble with Tyoma’s teacher. I am going to use this as a roadmap to Tyoma’s teacher. I had read this at the beginning of the school year when things were going well. Now with fall and winter flus swishing around, I have to remind and re-educate.You have given me the perfect road map. I am so grateful to have the help. I would feel so lost tonight without your po!rLCheets!sori
hola jose espero me puedas ayudar mira yo tengo que hacer algo similar pero con jdate chooser en netbeans y tengo que selecionar de una lista un empleado y selecionar el rango de fechas en el cual quiero que me muestre la informacion en un jtable…. de antemano gracias