Ver Mensaje Individual
  #2 (permalink)  
Antiguo 10/12/2013, 16:29
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Sentencia SQL

podria ser algo asi:


Código SQL:
Ver original
  1. DECLARE @query VARCHAR(MAX)
  2.  
  3. SET @query='SELECT tabla1.campo1
  4. FROM (tabla1 INNER JOIN tabla2 ON (
  5. (tabla2.campo2 = tabla1.campo2 AND tabla2.campo5 >= tabla1.campo) OR
  6. (tabla2.campo3 = tabla1.campo3 AND tabla2.campo6 >= tabla1.campo) OR
  7. (tabla2.campo4 = tabla1.campo4 AND tabla2.campo7 >= tabla1.campo))
  8. INNER JOIN tabla3 ON tabla3.id = tabla1.idtabla3 AND tabla3.fechainicial <= 'la fecha buscada'
  9. INNER JOIN tabla4 ON tabla3.id = tabla4.idtabla3
  10. AND tabla3.fechafinal >= 'la fecha buscada')'
  11.  
  12. IF (SELECT campo FROM tabla)=1 THEN
  13. SET @query=@query + 'INNER JOIN tabla5 ON tabla5.id = tabla2.id_tabla5 AND tabla5.idtabla4 = tabla1.idtabla4'
  14.  
  15.  
  16. SET @query='WHERE tabla2.id = valorbuscado
  17. GROUP BY tabla1.campo1 '
  18.  
  19. EXEC sp_executesql @query
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me