Corte de control

18/06/2004 - 16:05 por Alberto Cabello | Informe spam
Hola a todos
Quiero realizar un corte de control en una instrucción en sql.
¿ Esto se puede realizar ?. Por favor, me pueden ayudar

Preguntas similare

Leer las respuestas

#1 Gustavo Larriera [MVP SQL]
18/06/2004 - 17:30 | Informe spam
Si los cortes de control deseas hacerlos en al backend, puedes estudiar en
tus Books Online del producto el uso de SELECT con GROUP BY, COMPUTE,
ROLLUP.

Si deseas hacer el corte de control en la capa de lógica de negocios,
deberás programar la lógica necesaria para procesar el conjunto de
resultados tomados de una SELECT simple.

Gustavo Larriera, MVP-SQL, MCSE
Uruguay LatAm
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho / This posting is provided "AS IS" with no warranties, and confers
no rights.
"Alberto Cabello" wrote in message
news:eizI$
Hola a todos
Quiero realizar un corte de control en una instrucción en sql.
¿ Esto se puede realizar ?. Por favor, me pueden ayudar


Respuesta Responder a este mensaje
#2 Salvador Ramos
18/06/2004 - 17:48 | Informe spam
No te entiendo, que quieres decir con "hacer un corte de control" ???

Un saludo
Salvador Ramos
Murcia - España
[MVP SQL Server]
www.helpdna.net

"Alberto Cabello" escribió en el mensaje
news:eizI$
Hola a todos
Quiero realizar un corte de control en una instrucción en sql.
¿ Esto se puede realizar ?. Por favor, me pueden ayudar


Respuesta Responder a este mensaje
#3 Salvador Ramos
18/06/2004 - 17:56 | Informe spam
jeje, ahora entendí aquí en España los llamamos "rupturas de control", nunca
había oido "corte de control" :-)

Un saludo
Salvador Ramos
Murcia - España
[MVP SQL Server]
www.helpdna.net

"Gustavo Larriera [MVP SQL]" escribió en el
mensaje news:
Si los cortes de control deseas hacerlos en al backend, puedes estudiar en
tus Books Online del producto el uso de SELECT con GROUP BY, COMPUTE,
ROLLUP.

Si deseas hacer el corte de control en la capa de lógica de negocios,
deberás programar la lógica necesaria para procesar el conjunto de
resultados tomados de una SELECT simple.

Gustavo Larriera, MVP-SQL, MCSE
Uruguay LatAm
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho / This posting is provided "AS IS" with no warranties, and confers
no rights.
"Alberto Cabello" wrote in message
news:eizI$
> Hola a todos
> Quiero realizar un corte de control en una instrucción en sql.
> ¿ Esto se puede realizar ?. Por favor, me pueden ayudar
>
>


Respuesta Responder a este mensaje
#4 Gustavo Larriera [MVP SQL]
18/06/2004 - 20:39 | Informe spam
:-)))))) todo un tema esto de adaptar los términos anglosajones a nuestras
variantes de español :-)))))

Gustavo Larriera, MVP-SQL, MCSE
Uruguay LatAm
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho / This posting is provided "AS IS" with no warranties, and confers
no rights.
"Salvador Ramos" wrote in message
news:
jeje, ahora entendí aquí en España los llamamos "rupturas de control",


nunca
había oido "corte de control" :-)

Un saludo
Salvador Ramos
Murcia - España
[MVP SQL Server]
www.helpdna.net

"Gustavo Larriera [MVP SQL]" escribió en el
mensaje news:
> Si los cortes de control deseas hacerlos en al backend, puedes estudiar


en
> tus Books Online del producto el uso de SELECT con GROUP BY, COMPUTE,
> ROLLUP.
>
> Si deseas hacer el corte de control en la capa de lógica de negocios,
> deberás programar la lógica necesaria para procesar el conjunto de
> resultados tomados de una SELECT simple.
>
> Gustavo Larriera, MVP-SQL, MCSE
> Uruguay LatAm
> Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
> derecho / This posting is provided "AS IS" with no warranties, and


confers
> no rights.
> "Alberto Cabello" wrote in message
> news:eizI$
> > Hola a todos
> > Quiero realizar un corte de control en una instrucción en sql.
> > ¿ Esto se puede realizar ?. Por favor, me pueden ayudar
> >
> >
>
>


Respuesta Responder a este mensaje
#5 ulises
18/06/2004 - 20:53 | Informe spam
:) tampoco lo conocía por ese nombre, en el BOL hay un
ejemplo de ROLLUP :

- tomado del BOL -
Por ejemplo, una tabla simple Inventory contiene:

Item Color Quantity
Table Blue 124
Table Red 223
Chair Blue 101
Chair Red 210

Esta consulta genera un informe de subtotales:

SELECT CASE WHEN (GROUPING(Item) = 1) THEN 'ALL'
ELSE ISNULL(Item, 'UNKNOWN')
END AS Item,
CASE WHEN (GROUPING(Color) = 1) THEN 'ALL'
ELSE ISNULL(Color, 'UNKNOWN')
END AS Color,
SUM(Quantity) AS QtySum
FROM Inventory
GROUP BY Item, Color WITH ROLLUP

Item Color QtySum
Chair Blue 101.00
Chair Red 210.00
Chair ALL 311.00
Table Blue 124.00
Table Red 223.00
Table ALL 347.00
ALL ALL 658.00
fin del BOL

ahora bien, si deseas eliminar los valores repetidos (para
simular un reporte) podrías probar haciendo un JOIN con la
misma tabla, por ejemplo :

SELECT CASE WHEN a.item = b.item THEN a.item
WHEN a.item = 'ALL' THEN a.item
ELSE '' END as item,
a.color,
a.cantidad
FROM
( SELECT CASE WHEN (GROUPING(item) = 1) THEN 'ALL'
ELSE isnull(item,'')
END item,
CASE WHEN (GROUPING(color) = 1
and GROUPING(Item) = 0) THEN 'ALL'
ELSE isnull(color,'')
END color,
sum(quantity) as cantidad
FROM inventory
GROUP BY item, color WITH ROLLUP ) a
LEFT JOIN
( select item, min(color) as color from inventory b
group by item ) b
ON ( a.item = b.item AND a.color = b.color )

que te daría el siguiente resultado :

item color cantidad
Chair Blue 101
Red 210
ALL 311
Table Blue 124
Red 223
ALL 347
ALL 658

(7 row(s) affected)

prueba con algunas variaciones ...

Saludos,
Ulises

jeje, ahora entendí aquí en España los llamamos "rupturas


de control", nunca
había oido "corte de control" :-)

Un saludo
Salvador Ramos
Murcia - España
[MVP SQL Server]
www.helpdna.net

"Gustavo Larriera [MVP SQL]"


escribió en el
mensaje news:
Si los cortes de control deseas hacerlos en al backend,




puedes estudiar en
tus Books Online del producto el uso de SELECT con




GROUP BY, COMPUTE,
ROLLUP.

Si deseas hacer el corte de control en la capa de




lógica de negocios,
deberás programar la lógica necesaria para procesar el




conjunto de
resultados tomados de una SELECT simple.

Gustavo Larriera, MVP-SQL, MCSE
Uruguay LatAm
Este mensaje se proporciona "COMO ESTA" sin garantias y




no otorga ningun
derecho / This posting is provided "AS IS" with no




warranties, and confers
no rights.
"Alberto Cabello" wrote




in message
news:eizI$
> Hola a todos
> Quiero realizar un corte de control en una




instrucción en sql.
> ¿ Esto se puede realizar ?. Por favor, me pueden




ayudar
>
>






.

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida