Ver Mensaje Individual
  #4 (permalink)  
Antiguo 19/04/2013, 09:15
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, 9 meses
Puntos: 774
Respuesta: Condicion en query.

Código SQL:
Ver original
  1. CREATE TABLE #temp
  2. (
  3. id INT,
  4. producto VARCHAR(20),
  5. negocio VARCHAR(30)
  6. )
  7.  
  8. INSERT INTO #temp VALUES (1,'Producto 1','Negocio 1')
  9. INSERT INTO #temp VALUES (2,'Producto 1','Negocio 2')
  10. INSERT INTO #temp VALUES (3,'Producto 1','Negocio 3')
  11.  
  12.  
  13. INSERT INTO #temp VALUES (4,'Producto 2','Negocio 1')
  14. INSERT INTO #temp VALUES (5,'Producto 2','Negocio 2')
  15. INSERT INTO #temp VALUES (6,'Producto 2','Negocio 3')
  16.  
  17. INSERT INTO #temp VALUES (7,'Producto 3','Negocio 2')
  18. INSERT INTO #temp VALUES (8,'Producto 3','Negocio 1')
  19. INSERT INTO #temp VALUES (9,'Producto 3','Negocio 3')
  20.  
  21.  
  22.  
  23. SELECT CASE WHEN t1.Negocio='Negocio 3' AND t2.Negocio='Negocio 2' THEN 'si' ELSE 'No' END AS condicion,
  24. t1.id,t2.producto
  25. FROM (
  26. SELECT negocio,id FROM #temp WHERE CONVERT(VARCHAR(20),id) + '|' + producto IN
  27. (SELECT CONVERT(VARCHAR(20),MAX(id)) + '|' + producto FROM #temp GROUP BY producto)) AS t1
  28. LEFT JOIN (SELECT * FROM #temp) AS t2 ON (t2.id=t1.id-1)

saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me