Consulta SQL con between

Hola gente, hace mil años que no hago esto y la verdad que no me acuerdo muy bien, como se hace una consulta SQL para que nos discrimine por...

La FAQ Consulta SQL con between tiene

Pertenece a la categoría:
Pregunta
Hola gente,


hace mil años que no hago esto y la verdad que no me acuerdo muy bien, como se hace una consulta SQL para que nos discrimine por fecha? Es decir que me liste desde una fecha hasta otra, se que se utilizaba el between, pero no me acuerdo muy bien.
Respuesta de José Daniel Fernández
Hola.




Para las comparaciones de rangos de fechas, por lo menos en Oracle, lo que yo empleo es:




SELECT campos FROM tabla WHERE campo_fecha BETWEEN fecha_1 AND fecha_2



Espero que te sirva.


Un saludo


Volver al árbol de categoríasVolver al árbol de categorías

Comentarios

Antonio Estrada

05/6/2006
Yo trabajo con MS SQL2000 y para el Between de una fecha, uso cadenas de 10 caracteres que representan 1 día a las 00:00 horas. Ejm. si quisiera los registros de operaciones entre el 10 y 15 de junio del 2006, pondría

SELECT * FROM ordenes WHERE fecha_registro BETWEEN '10/06/2006' AND '16/06/2006'

El 16 es debido a las 00:00 horas lo que garantiza que se tomen integramente las ordenes del día 15.

Raul

06/6/2006
select nombre,domicilio,localidad,facnac
from tabla
where numero between to_date('&fecnac_desde','dd/mm/yyyy') and to_date('&fecnac_hasta','dd/mm/yyyy');

Edgar Caudillo

06/6/2006
Si esto no funciona, para el caso de oracle, puedes intentar darle formato a tu fecha, es decir, que donde le ingreses la feha le des el formato utilizando el metodo to_date(strFecha, "DD/MM/YYYY HH24:MI:SS", depeniendo de lo que tu le envies en la variabe de strFecha.

Me explico . . .

Saludos !!!

The Putxi Project

19/3/2007
Hola, a mi inicialmente no me iva la solución dle between, però tenia un error que comento por si ha pasado a alguien mas. Resulta que a veces la BBDD puede estar en formato Anglosajon, i las fechas hay que ponerlas en formato: mm/dd/yyyy o configurar la consulta para que lo tenga en cuenta.
Otra cosa, yo en un SQL 2000 no me funciona la función to_date. Quizà no exista
espero haver ayudado.
The Putxi Project: http://putxi.wordpress.com

Jose Miguel

14/8/2007
Ejemplo de descriminacion de Fecha utilizando un declare:



/*SELECT FROM [dbo].[TABLA T0] T0*/
declare @fecha as DATETIME
/* WHERE */
set @fecha = /* CAMPO */ '[%0]'


/*SELECT FROM [dbo].[TABLA T0] T0*/
declare @fecha1 as DATETIME
/* WHERE */
set @fecha1 = /* CAMPO */ '[%1]'


sELECT CAMPO, CAMPO
FROM TABLA
WHERE CAMPO >=@fecha AND CAMPO <=@fecha1

julio

05/5/2009
POR FAVOR AYUDENME CON ESTE SCRIPT
POR FAVOR AYUDENME CON ESTE SCRIPT


mysql> select saldocuenta
-> from clientes
-> where saldocuenta between (min(saldocuenta)) and 100000;
ERROR 1111 (HY000): Invalid use of group function

estudiante Del Pozo

08/2/2011
******************* T.Y ********************
SKJGASKFGASJHFGSAKJFHGASDFHGASKLFRHLASKJHDFLSNFASGJKASKJLFHAIFGASIUFYSIFAKSJHFIASFWGJPASOIUFPASJGHLÑAKHSDOASDFAKTGPASUGOAHSLFHSDT

Sebacho

15/3/2011
SQl
Ayuda estoy en un proyecto y necesito validar cuando voy hacer un insert si los campos
de fecha inicio entre otra fechas estan repetidos no se puede insertar y no se como hacerlo

public function Registrar ($idCurso, $idAmbiente, $fecha_ini, $fecha_fin, $jornada) {
$sql1="select idCxA from CxA where idAmbiente='$idAmbiente' AND Jornada= '$jornada' AND fecha_fin BETWEEN fecha_ini='$fecha_ini' AND fecha_fin='$fecha_ini'";
$result1 = $this->bd->query($sql1);
$encontrados=$result1->num_rows;
if ($encontrados>0){
echo '<script type="text/javascript">alert("OCUPADO");</script>' ;
}
else if ($encontrados==0){
$sql = "INSERT INTO CxA (idCurso, idAmbiente,fecha_ini, fecha_fin, jornada) values ('$idCurso', '$idAmbiente', '$fecha_ini', '$fecha_fin', '$jornada')";
$result = $this->bd->query($sql);
echo '<script type="text/javascript">alert("INSERTO EXITOSAMENTE");</script>' ;
}
}

este es mi codigo si me puede ayudar gracias

aNA

22/2/2012
PREGUNTA
COMO SE UTILIZA EL AS en sql

jupa

26/2/2013
insercion
mira tengo una fechainicial y una fechafinal por lo general es cada 6 meses quiero comparar si fechainicial <= a fechafinal me inserte la fecha inicial pero incrementada en 8 es decir si es lunes 2 de enero entonces el proximo registro sera 9 de enero. gracias. por si alguien me puede ayudar
FAQ relacionadas

Para ver más FAQ relacionadas accede a las categorías:

Volver al árbol de categoríasVolver al árbol de categorías