While??, wiht??

17/09/2009 - 09:01 por AAAAA | Informe spam
Hola amigos, puedo usar un while para sustituir un un cursor que bsado en
los campos de la tabla que estoy recorriendo hace una actualizacion en otra
tabla?

en esta sentencia :

**********************************************************
WITH List AS
{
SELECT
[DepartamentoID],
[Descripcion],
ROW_NUMBER() OVER(
ORDER BY
case when(@ordenAscDes = 'ASC') then case when
@ordenColumna='DepartamentoID' then DepartamentoID end end,
case when(@ordenAscDes = 'ASC') then case when @ordenColumna='Descripcion'
then Descripcion end end
) AS RowNum
FROM [dbo].[Departamento]
WHERE
(DepartamentoID = isnull(@DepartamentoID, DepartamentoID)) AND
(Descripcion = isnull(@Descripcion, Descripcion))
)

SELECT
[DepartamentoID],
[Descripcion]
FROM List
WHERE (RowNum BETWEEN (@pagina - 1) * @tamanioPagina + 1
AND @pagina * @tamanioPagina)
or (@pagina is null or @tamaniopagina is null)


End
**************************************
Que funcion tiene el with? y el over?

Gracias

Saludos

Cesar

Preguntas similare

Leer las respuestas

#1 Carlos Sacristan
17/09/2009 - 09:17 | Informe spam
"With" hace referencia a una Common Table Expression (CTE), mientras que
OVER va junto con la función de categoría ROW_NUMBER()

Ambos objetos están bien explicados en los BOL (la ayuda de SQL Server)

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático

http://blogs.solidq.com/es/elrincondeldba


"AAAAA" wrote in message
news:%
Hola amigos, puedo usar un while para sustituir un un cursor que bsado en
los campos de la tabla que estoy recorriendo hace una actualizacion en
otra tabla?

en esta sentencia :

**********************************************************
WITH List AS
{
SELECT
[DepartamentoID],
[Descripcion],
ROW_NUMBER() OVER(
ORDER BY
case when(@ordenAscDes = 'ASC') then case when
@ordenColumna='DepartamentoID' then DepartamentoID end end,
case when(@ordenAscDes = 'ASC') then case when @ordenColumna='Descripcion'
then Descripcion end end
) AS RowNum
FROM [dbo].[Departamento]
WHERE
(DepartamentoID = isnull(@DepartamentoID, DepartamentoID)) AND
(Descripcion = isnull(@Descripcion, Descripcion))
)

SELECT
[DepartamentoID],
[Descripcion]
FROM List
WHERE (RowNum BETWEEN (@pagina - 1) * @tamanioPagina + 1
AND @pagina * @tamanioPagina)
or (@pagina is null or @tamaniopagina is null)


End
**************************************
Que funcion tiene el with? y el over?

Gracias

Saludos

Cesar


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida