Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-12-2008
Avatar de flystar
flystar flystar is offline
Miembro
 
Registrado: jul 2006
Posts: 184
Poder: 19
flystar Va por buen camino
Como hago una consulta excluyente de esta forma?

Buenos Días Amigos.

Solicito ayuda a una Alma caritativa para la siguiente pregunta:

Supongamos que tenemos una tabla que contiene un campo con una clave númerica que si se puede repetir y un campo con un valor tipo fecha.
Un ejemplo fictisio podría ser:

clave fecha
1 01/feb/2008
2 05/feb/2008
1 06/mar/2008
5 21/oct/2008
5 15/sep/2008
1 30/oct/2008
. .
. .
. .
límite límite


¿Como hago una consulta que me devuelva la clave que en ninguno de los registros contiene una fecha que exceda un fecha predeterminada por ejemplo '01/nov/2008'?

Muchas GRACIAS!!!
__________________

"Los unicos que no se equivocan son aquellos que no intentan hacer algo."
Iván Caballero Cano...
ivanhalen77@gmail.com
Responder Con Cita
  #2  
Antiguo 11-12-2008
agustibaldo agustibaldo is offline
Miembro
 
Registrado: nov 2006
Posts: 105
Poder: 18
agustibaldo Va por buen camino
No entiendo muy bien tu pregunta...

Necesitas que la consulta devuelva los valores de clave, cuya fecha no supere el 01/11/2008?

Si es así, prueba haciendo esto(en SQL Server 2005):

Código:
SELECT TABLA.CLAVE

FROM TABLA

WHERE TABLA.FECHA < '20081101'

Espero que te haya sido de ayuda..

Saludos.
Responder Con Cita
  #3  
Antiguo 11-12-2008
agustibaldo agustibaldo is offline
Miembro
 
Registrado: nov 2006
Posts: 105
Poder: 18
agustibaldo Va por buen camino
Me parece que entendí lo que querías.

Prueba también con esto:

Código:
SELECT TABLA.CLAVE
FROM TABLA
WHERE TABLA.CLAVE NOT IN (SELECT TABLA.CLAVE
                          FROM TABLA
                          WHERE TABLA.FECHA > '20081101')
No pude probar la consulta con datos reales.

Comenta que tal te fue.

Saludos
Responder Con Cita
  #4  
Antiguo 11-12-2008
Avatar de flystar
flystar flystar is offline
Miembro
 
Registrado: jul 2006
Posts: 184
Poder: 19
flystar Va por buen camino
Gracias por tu apoyo..No quisiera usar la funcion not in por que ese tipo de consultar son extremadamente lentas y pesadas..me gustaría tratar de usar un Join pero no me sale..

como se hara? Gracias.
__________________

"Los unicos que no se equivocan son aquellos que no intentan hacer algo."
Iván Caballero Cano...
ivanhalen77@gmail.com
Responder Con Cita
  #5  
Antiguo 11-12-2008
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 20
Ivanzinho Va por buen camino
Podrías hacer algo como lo que sigue:

Código SQL [-]
select A.clave
from tabla A left join (select clave from tabla C where C.fecha >:fecha) B
     on A.clave = B.clave
where B.clave is null
group by A.Clave

Espero que te sirva.

Un saúdo.
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como hago esta consulta? MaMu SQL 4 08-05-2007 12:11:24
como hago esta consulta armando SQL 5 01-03-2004 20:39:00
Como hago esta consulta? danytorres SQL 2 27-02-2004 14:31:51
como hago esta consulta? danytorres SQL 4 16-12-2003 15:19:39


La franja horaria es GMT +2. Ahora son las 00:53:17.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi