Ver Mensaje Individual
  #4 (permalink)  
Antiguo 03/05/2013, 10:59
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 4 meses
Puntos: 774
Respuesta: Agrupar informacion

Código SQL:
Ver original
  1. CREATE TABLE tabla
  2. (
  3. region INT,
  4. estado VARCHAR(20)
  5. )
  6.  
  7. INSERT INTO tabla VALUES (2,'Baja California')
  8. INSERT INTO tabla VALUES (2,'Sonora')
  9. INSERT INTO tabla VALUES (2,'Monterrey')
  10. INSERT INTO tabla VALUES (2,'Cohahuila')
  11. INSERT INTO tabla VALUES (1,'Nayarit')
  12. INSERT INTO tabla VALUES (1,'Jalisco')
  13. INSERT INTO tabla VALUES (1,'Michoacan')
  14. INSERT INTO tabla VALUES (1,'Puebla')
  15.  
  16.  
  17. DECLARE @groups AS VARCHAR(MAX)
  18. SELECT @groups=COALESCE(@groups + ',', '') + estado FROM tabla WHERE region=1
  19. print @groups
  20.  
  21.  
  22. CREATE FUNCTION fn_return_regions(@region INT)
  23. RETURNS VARCHAR(MAX)  WITH schemabinding  
  24. AS
  25. BEGIN
  26. DECLARE @groups AS VARCHAR(MAX)
  27. SELECT @groups=COALESCE(@groups + ',', '') + estado FROM #temp WHERE region=@region
  28. RETURN @groups
  29. END
  30. GO
  31.  
  32. SELECT region,fn_return_regions(region) FROM tabla GROUP BY region

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