Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-01-2016
CHRISTIANHAZ77 CHRISTIANHAZ77 is offline
Registrado
 
Registrado: mar 2010
Posts: 8
Poder: 0
CHRISTIANHAZ77 Va por buen camino
Consultas Maestro Detalle

Hola, estoy lidiando con una consulta y no logro sacarla. tengo una tabla FILIATORIOS, con sus campos referidos a la filiacion de personas.
Por otro lado tengo la tabla señas particulares,SEÑAS PARTICULARES, IdFIliatorio, Seña, Ubicacion.
una persona puede tener varios registros en la tabla señas particulares, la consulta por ejemplo en la condicion debo traer los registros que tengan

(seña1 en ubicacion1) y (seña2 en ubicacion2) u mas criterios.

FILIATORIOS
ID 1
NOMBRE JUAN

SEÑAS PARTICULARES
IDFILIATORIO 1
SEÑA 1
UBICACION 2


IDFILIATORIO 1
SEÑA 5
UBICACION 4


Código SQL [-]
select 
    filiatorios.apellidos,
    filiatorios.nombres,
    filiatorio_senas_part.idsena,
    filiatorio_senas_part.idubicacion
from filiatorios
   inner join filiatorio_senas_part on (filiatorios.idfiliatorios = filiatorio_senas_part.idfiliatorio)

   where filiatorio_senas_part.idsena = :sena1   and  filiatorio_senas_part.idubicacion = :ubicacion1

en ese ejemplo funcionaria cuando solo uso una sola condicion, pero si quiero agregarle otra es cuando no logro resolver.
espero me haya podido explicar, desde ya gracias por su tiempo.
Responder Con Cita
  #2  
Antiguo 18-01-2016
Avatar de Osorio
Osorio Osorio is offline
Miembro
 
Registrado: may 2003
Ubicación: Colombia
Posts: 251
Poder: 21
Osorio Va por buen camino
Dos dias y sin respuesta es una señal de que no has planteado bien tu pregunta. Por favor replanteala y seguro mas de uno hará sus aportes.

Saludos.
Responder Con Cita
  #3  
Antiguo 18-01-2016
CHRISTIANHAZ77 CHRISTIANHAZ77 is offline
Registrado
 
Registrado: mar 2010
Posts: 8
Poder: 0
CHRISTIANHAZ77 Va por buen camino
gracias Osorio, ahi intento nuevamente.

Tabla Filiatorios
Id 1
Nombre Juan


Id 2
Nombre Pepe
-------------------------------------------
Tabla señas
Id1
IdFiliatorio 1
Seña marca nacimiento
Ubicación espalda

Id2
Idfiliatorio 1
Seña tatuaje sol
Ubicación mano derecha

Id3
Idfiliatorio 2
Seña tatuaje sol
Ubicación mano derecha

Quiero hacer la consulta donde coloque dos o mas condiciones. Por ejemplo preguntar
Quien tiene tatuaje sol en mano derecha y marca nacimiento en espalda, para que solo me devuelva el que cumpla esas dos. Estoy leyendo algo y puede que los where deberian ser conteniendo select? Cada where lleva los dos campos si o si (seña y ubicación)
Gracias.
Responder Con Cita
  #4  
Antiguo 18-01-2016
Avatar de Osorio
Osorio Osorio is offline
Miembro
 
Registrado: may 2003
Ubicación: Colombia
Posts: 251
Poder: 21
Osorio Va por buen camino
Que tal algo asi:


Código SQL [-]
select 
    filiatorios.apellidos,
    filiatorios.nombres,
    filiatorio_senas_part.idsena,
    filiatorio_senas_part.idubicacion
from filiatorios
   inner join filiatorio_senas_part on (filiatorios.idfiliatorios = filiatorio_senas_part.idfiliatorio)

   where filiatorio_senas_part.idsena = :sena1   and  filiatorio_senas_part.idubicacion = :ubicacion1


union


select 
    filiatorios.apellidos,
    filiatorios.nombres,
    filiatorio_senas_part.idsena,
    filiatorio_senas_part.idubicacion
from filiatorios
   inner join filiatorio_senas_part on (filiatorios.idfiliatorios = filiatorio_senas_part.idfiliatorio)

   where filiatorio_senas_part.idsena = :sena2   and  filiatorio_senas_part.idubicacion = :ubicacion2

Tambien puedes hace un CASE dentro del WHERE pero no tengo ningun motor SQL a la mano para probar. Igual hay buena literatura al respecto. busca WHERE CASE en google y veras.

Saludos.
Responder Con Cita
  #5  
Antiguo 18-01-2016
CHRISTIANHAZ77 CHRISTIANHAZ77 is offline
Registrado
 
Registrado: mar 2010
Posts: 8
Poder: 0
CHRISTIANHAZ77 Va por buen camino
Muchas gracias osorio, al ser union me trae el resultado con tal que cumpla una sola condicion. Pero ahora ya se por donde buscar la vuelta. Muchas gracias!!
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Saber si el DBGrid (Detalle) esta Vacio en Relacion Maestro/Detalle Adrian Murua Conexión con bases de datos 2 03-01-2009 14:48:46
Maestro/Detalle (No graba en tabla Maestro) teclilla Tablas planas 12 21-04-2008 21:59:54
Problema tabla Maestro-detalle en la q la pk de t.detalle formad por 2cods de la maes akinom38 Varios 1 09-11-2007 20:27:44
Maestro-Detalle ;Actualizar detalle a partir de un DBgrid norberto_larios Conexión con bases de datos 1 11-09-2004 19:17:34
Consultas Anidadas o Maestro/Detalle? judoboy SQL 8 05-05-2003 19:48:05


La franja horaria es GMT +2. Ahora son las 22:45:41.


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