Instrucción With

25/02/2008 - 14:46 por Aventurero | Informe spam
Buenos días.
Tengo instalado SQL Server 2005 St.

Tengo un SP, con la siguiente sentencia.

with cte
as
(
select *, row_number() over(partition by cedula order by cedula) as rn
from TblClientes
)
select
*
into TblClientAux
from
cte
where
rn = 1

Con nivel de compatibilidad: Sql Server 2000 (80), funciona bien.

Con nivel de compatibilidad: Sql Server 2005 (90), No ejecuta y da el
siguiente error:

Mens 319, Nivel 15, Estado 1, Procedimiento p_ProcesarProduccion, Línea 163
Sintaxis incorrecta junto a la palabra clave 'with'.
Si esta instrucción es una expresión de tabla común o una cláusula
xmlnamespaces,
la instrucción anterior debe terminarse con punto y coma (;).

Quiero utilizar compatibilidad Sql Server 2005 (90).
Qué debo corregir en la Sentencia?

Si me pueden ayudar con un Link acerca de uso de With les agradecería.

Atentemante,


Aventurero.

Preguntas similare

Leer las respuestas

#6 Aventurero
28/02/2008 - 02:01 | Informe spam
Muchas gracias Alejandro.
Atentamente,



Aventurero

"Alejandro Mesa" escribió en el
mensaje news:
Aventurero,

Me falto decir que preferible uses el punto y coma para que la sentencia
trabaje en las dos versiones.

AMB

"Alejandro Mesa" wrote:

Aventurero,

> Yo tampoco entiendo por qué no funciona con nivel de compatibilidad:
> Sql
> Server 2005 (90), con
> Sql Server 2000 (80) si.

Porque en la version 2000 el punto y coma no es requerido.


AMB

"Aventurero" wrote:

> Gracias a Gustavo y a Alejandro por responder.
>
> Yo tampoco entiendo por qué no funciona con nivel de compatibilidad:
> Sql
> Server 2005 (90), con
> Sql Server 2000 (80) si.
> Siguiendo el consejo de Alejandro, le coloque un ";" en la sentencia
> anterior y se ejecuta bien con (90).
>
> Gracias.
>
> Atentamente,
>
>
> Aventurero
>
>
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida