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

Insertar filas vacias entre cada registro

Estas en el tema de Insertar filas vacias entre cada registro en el foro de SQL Server en Foros del Web. Buena tarde... ¿Al resultado de una consulta se le puede insertar una fila vacia entre cada registro?, por ejemplo, me gustaria obtener este resultado despues ...
  #1 (permalink)  
Antiguo 21/05/2013, 19:46
 
Fecha de Ingreso: noviembre-2003
Mensajes: 209
Antigüedad: 20 años, 5 meses
Puntos: 0
Pregunta Insertar filas vacias entre cada registro

Buena tarde...

¿Al resultado de una consulta se le puede insertar una fila vacia entre cada registro?, por ejemplo, me gustaria obtener este resultado despues de ejecutar la consulta:

id | A | B | C
1 1 2 3
(fila vacia)
2 1 2 3
(fila vacia)
3 1 2 3
(fila vacia)


Solo he podido agregar una fila vacia al final de la consulta, pero no entre cada registro.

Muchas gracias de antemano, son muy amables.
  #2 (permalink)  
Antiguo 22/05/2013, 08:21
Avatar de 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: Insertar filas vacias entre cada registro

de que se puede se puede.....ahora para que necesitas eso???
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 22/05/2013, 10:37
 
Fecha de Ingreso: noviembre-2003
Mensajes: 209
Antigüedad: 20 años, 5 meses
Puntos: 0
Respuesta: Insertar filas vacias entre cada registro

Libras, Tú me ayudaste en mi anterior post!... de verdad muchas gracias.

Usando Tú ayuda: http://www.forosdelweb.com/f87/sumar...sulta-1052609/

Obtuve los valores que necesitaba para mostrarlos en un GridView, queda asi:

Depto | Ene. | Feb. | Mar.
Forecast: 65011 $10 $ 20 $30
Forecast: 65012 $100 $ 200 $300
Forecast: 65022 $1000 $2000 $3000

Tengo otra consulta donde obtengo en base al departamento, y otros parametros, el gasto de cada departamento y me gustaria poner los valores entre cada registro, algo asi:

Depto | Ene. | Feb. | Mar.
Forecast: 65011 $10 $20 $ 30
Gastado: $3 $ 9 $25
Forecast: 65012 $100 $200 $300
Gastado: $ 0 $55 $85
Forecast: 65022 $1000 $2000 $3000
Gastado $1200 $600 $300

La idea que tenia era insertar una fila en blanco entre cada registro para despues llenar un GridView, y luego en ASP.Net recorrer el GridView y poner los valores de Gastado.

Como obtengo los valores de gastado es:

GrpCta Depto Mes Gastado Año
2000 65011 6 200.00 2013
2000 65012 6 100.00 2013
2000 65012 8 200.00 2013

Esa era mi idea, ahora si se puede hacer directamente en SQL pues seria mucho mejor.

Saludos y muchas gracias.
  #4 (permalink)  
Antiguo 22/05/2013, 10:57
Avatar de 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: Insertar filas vacias entre cada registro

Código SQL:
Ver original
  1. CREATE TABLE #partidas
  2. (
  3. id INT,
  4. depto INT
  5. )
  6.  
  7. CREATE TABLE #forecast
  8. (
  9. depto INT,
  10. enero INT,
  11. febrero INT
  12. )
  13.  
  14. CREATE TABLE #gastado
  15. (
  16. depto INT,
  17. gastado INT
  18. )
  19. ID | Folio | DESC. | Depto.
  20. 559 460 aaaa 65011
  21. 560 460 bbbb 65012
  22. 561 460 cccc 65012
  23.  
  24. INSERT INTO #partidas VALUES (559,65011)
  25. INSERT INTO #partidas VALUES (560,65012)
  26. INSERT INTO #partidas VALUES (561,65012)
  27.  
  28.  
  29. INSERT INTO #forecast VALUES (65011,100,200)
  30. INSERT INTO #forecast VALUES (65012,50,80)
  31. INSERT INTO #forecast VALUES (65013,300,150)
  32.  
  33.  
  34. INSERT INTO #gastado VALUES (65011,200)
  35. INSERT INTO #gastado VALUES (65012,100)
  36. INSERT INTO #gastado VALUES (65012,200)
  37.  
  38. SELECT *,ROW_NUMBER() OVER (partition BY depto,gastado ORDER BY depto,gastado) rn FROM (
  39. SELECT SUM(enero) enero , SUM(febrero) febrero ,depto,'1' AS gastado FROM #forecast WHERE depto IN
  40. (SELECT depto FROM #partidas GROUP BY depto) GROUP BY depto
  41. UNION ALL
  42. SELECT gastado, '' , depto,'2' AS gastado FROM #gastado
  43. ) AS t1 ORDER BY depto ASC

Este es un ejemplo que te puede servir, si te fijas los valores con 1 son los del query de la suma de los meses y los que tienen el 2 son los valores de la consulta gastado(que serian los espacios en blanco que necesitas)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 22/05/2013, 15:47
 
Fecha de Ingreso: noviembre-2003
Mensajes: 209
Antigüedad: 20 años, 5 meses
Puntos: 0
Respuesta: Insertar filas vacias entre cada registro

Libras, Muchas gracias .....

Dejame aplicar el ejemplo y te aviso.

Saludos!

Etiquetas: cada, filas, insert, registro, vacias
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 07:23.