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 02-07-2005
Carlex Carlex is offline
Miembro
 
Registrado: feb 2004
Ubicación: Bolivia
Posts: 88
Poder: 21
Carlex Va por buen camino
Unhappy Consulta doble?

Muy buenas a todos:

Mi consulta es la siguiente tengo una tabla detalle de la sgte forma:
Código:
  
CI   Comp   F_FechaP	S_Descripcion  M_Pago
123  23/96  23/05/1998  S/Kardex	23.5
123  23/96  30/06/1998  Reord		36.5
123  23/96  30/07/1998  Planillas	30.3
456  63/96  23/05/1998  S/Kardex	25.8
456  63/96  30/06/1998  Reord		13.5
456  63/96  30/07/1998  Planillas	30.0
789  87/96  23/05/1998  S/Kardex	23.5
789  87/96  30/07/1998  Planillas	30.5
etc..
La consulta es...como puedo hacer un query q me seleccione todos lo registros con las condiciones registros mayores o iguales al 30/06/1998 y q en su descripcion diga "Reord" en esta fecha, es decir q me bote los resultados d la sgte forma:

Código:
  
CI   Comp   F_FechaP	S_Descripcion  M_Pago
123  23/96  30/06/1998  Reord		36.5
123  23/96  30/07/1998  Planillas	30.3
456  63/96  30/06/1998  Reord		13.5
456  63/96  30/07/1998  Planillas	30.0
Mi logica es 1ro un query q me seleccione todos aquellos q en fecha 30/06/1998 tenga la descripcion "Reord", y luego con otro query selecionar los mayores a 30/06/1998 y luego unirlos...pero no me sale, una ayuda...GRacias
Responder Con Cita
  #2  
Antiguo 02-07-2005
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
La consulta es...como puedo hacer un query q me seleccione todos lo registros con las condiciones registros mayores o iguales al 30/06/1998 y q en su descripcion diga "Reord" en esta fecha, es decir q me bote los resultados d la sgte forma:

Seguramente quieres decir que la fecha sea mayor o igual a 30-06-1998 o descripcion contenga "Reord".
Porque si pones Y en vez de O, sólo te saldrían los que pongan Reord sin tener en cuenta al resto.

Seguramente no está bien redactada tu pregunta, porque aparentemente lo que pides es de lo más simple:
Código SQL [-]
 select *
 from latablaquesea
 where fecha >='06/30/1998'
 and descripcion containing "Reord"
Responder Con Cita
  #3  
Antiguo 02-07-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos
No entendi bien pero...
Código SQL [-]
select CI,Comp,F_FechaP,S_Descripcion,M_Pago
from tabla
where f_fechap>=#30/06/1998#
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #4  
Antiguo 02-07-2005
Carlex Carlex is offline
Miembro
 
Registrado: feb 2004
Ubicación: Bolivia
Posts: 88
Poder: 21
Carlex Va por buen camino
Buebas gracias por las respuestas, la pregunta se va por la 1ra respuesta cuando hago la consulta que decis

Código:
select *
 from latablaquesea
 where fecha >='06/30/1998'
 and descripcion containing "Reord"
El containing hace q incluya a todos los demas registros a partir del de 30/06/1998 q tiene como desc="Reord"?
el containing 1ra vez q lo veo

Gracias
Responder Con Cita
  #5  
Antiguo 03-07-2005
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Sin ánimo de ofender, creo que necesitas un tutorial de sql.
El containing, como su nombre indica, incluye las descripciones que contengan la cadena buscada, pudiendo estar en cualquier posición de la misma. Ejemplo, si buscas "OLA", encontrarás todas las "mariOLAs", "OLAs", "radiOLAs", etc.

Lo principal en esta consulta que necesitas es el "Y" en lugar del "O".
Selecciona todos los registros de la tablaquequequieras
que tenga fecha mayor o igual a "06/30/1998"
Y que la descripcion contenga "REORD"
Devolverá los que cumplan las dos condiciones.
Sin embargo si pones "O" en vez de "Y", estás permitiendo ambas condiciones, por lo tanto devolverá los que tenga descripcion "REORD" y los que cumplan con la fecha pedida.
Responder Con Cita
  #6  
Antiguo 03-07-2005
Carlex Carlex is offline
Miembro
 
Registrado: feb 2004
Ubicación: Bolivia
Posts: 88
Poder: 21
Carlex Va por buen camino
Talking

Ya lo logre la respuesta era una "simple" union de consultas por si les sirve:

Código:
  
SELECT *
FROM dbo.T_Detalle
WHERE (N_CI IN (SELECT N_CI
					   FROM dbo.T_Detalle
					   WHERE (S_DescDetalle = N'Reordenamiento'))) AND (F_FechaPago >= '30/06/1998')
Asi devuelve todos los detalles q sean mayores a 30/06/1998 q tengan desc=reord y tengan mas pagos...asi q la respuesta iba por mi idea inicial(creo q en muy pocos tutoriales se trate consultas de este tipo, y si los hay no los encontre), gracias por su tiempo

Carlex

Última edición por Carlex fecha: 03-07-2005 a las 02:59:12. Razón: Solucion encontrada
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


La franja horaria es GMT +2. Ahora son las 05:08:50.


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