Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

[SOLUCIONADO] Seleccionar Combinacion especifica

Estas en el tema de Seleccionar Combinacion especifica en el foro de SQL Server en Foros del Web. Hola. Desde ya quiero agradecer su ayuda, mi consulta es la siguiente tengo una tabla, que contiene 3 llaves foraneas que son: Aplicacion = > ...
  #1 (permalink)  
Antiguo 23/09/2014, 16:08
 
Fecha de Ingreso: mayo-2013
Mensajes: 11
Antigüedad: 7 años
Puntos: 0
Exclamación Seleccionar Combinacion especifica

Hola.

Desde ya quiero agradecer su ayuda, mi consulta es la siguiente tengo una tabla, que contiene 3 llaves foraneas que son: Aplicacion = > CuentaId,UnidadId,FuenteId.
Yo quiero obtener unicamente el campo CuentaId donde no exista una aplicacion con la sig combinación: Aplicacion=> CuentaId (Cualquiera),UnidadId = 1,FuenteId =1.

no se si me explique bien, ya que no tengo la minima idea de como hacerlo.

Gracias.
  #2 (permalink)  
Antiguo 23/09/2014, 16:20
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 13 años, 9 meses
Puntos: 774
Respuesta: Seleccionar Combinacion especifica

Código SQL:
Ver original
  1. SELECT * FROM tabla1 AS t1
  2. LEFT JOIN tabla2 AS t2 ON (t1.UnidadId =t2.unidadid AND t1.FuenteId=t2.fuenteid)
  3. WHERE t1.unidadid=1 AND t1.fuenteid=1
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 24/09/2014, 08:18
 
Fecha de Ingreso: mayo-2013
Mensajes: 11
Antigüedad: 7 años
Puntos: 0
Respuesta: Seleccionar Combinacion especifica

Gracias Libras por contestar tan rapido. pero creo que no me explique bien en si lo que yo necesito en si es saber que Cuentas no cumplen con la combinacion requerida.
  #4 (permalink)  
Antiguo 24/09/2014, 08:20
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 13 años, 9 meses
Puntos: 774
Respuesta: Seleccionar Combinacion especifica

Ejemplo de tus datos y te respondo correctamente ;)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 24/09/2014, 09:10
 
Fecha de Ingreso: mayo-2013
Mensajes: 11
Antigüedad: 7 años
Puntos: 0
Respuesta: Seleccionar Combinacion especifica

Muchisimas Gracias Libras. ya logre hacer lo que necesitaba dejare la consulta en caso de que alguien mas tenga el mismo problema que yo.

Cita:
select * from tbl.Cuenta c
where not exists (select cu.Id from tbl.Cuenta cu inner join tbl.Aplicacion apli on cu.Id = apli.CuentaId where apli.UnidadId = 1 and apli.FuenteDeIngresoId = 1 and apli.CuentaId = c.Id)
  #6 (permalink)  
Antiguo 24/09/2014, 09:19
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 12 años, 10 meses
Puntos: 180
Respuesta: Seleccionar Combinacion especifica

Y si lo pruebas asi???

Código SQL:
Ver original
  1. SELECT * FROM tbl.Cuenta c
  2.  WHERE NOT EXISTS (SELECT CuentaId FROM tbl.Aplicacion WHERE apli.CuentaId = pli.CuentaId  AND
  3.  pli.UnidadId = 1 AND
  4.  apli.FuenteDeIngresoId = 1
  5.  AND apli.CuentaId = c.Id)
__________________
MCTS Isaias Islas
  #7 (permalink)  
Antiguo 24/09/2014, 09:31
 
Fecha de Ingreso: mayo-2013
Mensajes: 11
Antigüedad: 7 años
Puntos: 0
Respuesta: Seleccionar Combinacion especifica

excelente me funciono perfecto Gracias iislas .

Etiquetas: relacion, select, sql, sql-sentencia
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:03.