Union de dos vistas

14/11/2006 - 16:08 por Oliver Cordova | Informe spam
Hola !! tengo un problemita, tengo dos vistas y necesito unir el resultado de
ambas vistas en una tercera, el script lo pruebo en el SQL Query Analyzer y
da bien el resultado, pero cuando intento ejecutar la vista me da error, me
da el siguiente error: {Microsoft}{ODBC SQL Server Driver}{SQL Server}
Internal SQL Server Error , el script es el siguiente:

CREATE VIEW dbo.SaldosClientes
AS
select cod_cliente,producto as cod_producto,'P' AS tipo,'0' as
agente,numero,'0' as año,Saldo_Unidades,saldo_bultos, Saldo_peso From
dbo.Saldosbodegapropia where (saldo_unidades>0)
UNION
select cod_cliente,producto as cod_producto, 'F' as tipo,agente,numero, año,
Saldo_Unidades,Saldo_bultos, Saldo_peso From dbo.Saldosbodegafiscal where
(saldo_unidades>0)

Esto lo pruebo en el SQL Query Analyzer y funciona bien, pero cuando ejecuto
la vista no... alguien prodria darme una manita con esto, se lo agradeceria
mucho.

Preguntas similare

Leer las respuestas

#1 Maxi
14/11/2006 - 16:11 | Informe spam
Hola, si ejecutas la vista en el query analizer funciona?


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"Oliver Cordova" escribió en el
mensaje news:
Hola !! tengo un problemita, tengo dos vistas y necesito unir el resultado
de
ambas vistas en una tercera, el script lo pruebo en el SQL Query Analyzer
y
da bien el resultado, pero cuando intento ejecutar la vista me da error,
me
da el siguiente error: {Microsoft}{ODBC SQL Server Driver}{SQL Server}
Internal SQL Server Error , el script es el siguiente:

CREATE VIEW dbo.SaldosClientes
AS
select cod_cliente,producto as cod_producto,'P' AS tipo,'0' as
agente,numero,'0' as año,Saldo_Unidades,saldo_bultos, Saldo_peso From
dbo.Saldosbodegapropia where (saldo_unidades>0)
UNION
select cod_cliente,producto as cod_producto, 'F' as tipo,agente,numero,
año,
Saldo_Unidades,Saldo_bultos, Saldo_peso From dbo.Saldosbodegafiscal where
(saldo_unidades>0)

Esto lo pruebo en el SQL Query Analyzer y funciona bien, pero cuando
ejecuto
la vista no... alguien prodria darme una manita con esto, se lo
agradeceria
mucho.


Respuesta Responder a este mensaje
#2 Alejandro Mesa
14/11/2006 - 16:23 | Informe spam
Oliver,

No se por que esta dando ese error, pero si te puedo recomendar usar el
operador "union all" en vez de el que estas usando. Si te das cuenta, estas
incluyendo una columna llamada [tipo], con valor constante que es diferente
en cada sentencia, por lo que las filas resultado de cada sentencia numca
seran iguales. El operador "union all" consume menos recursos.

CREATE VIEW dbo.SaldosClientes
AS
select
cod_cliente,
producto as cod_producto,
'P' AS tipo, - P
'0' as agente,
numero,
'0' as año,
Saldo_Unidades,
saldo_bultos,
Saldo_peso
From
dbo.Saldosbodegapropia
where
(saldo_unidades>0)

UNION ALL

select
cod_cliente,
producto as cod_producto,
'F' as tipo, - F
agente,
numero,
año,
Saldo_Unidades,
Saldo_bultos,
Saldo_peso
From
dbo.Saldosbodegafiscal
where
(saldo_unidades>0)
GO


AMB

"Oliver Cordova" wrote:

Hola !! tengo un problemita, tengo dos vistas y necesito unir el resultado de
ambas vistas en una tercera, el script lo pruebo en el SQL Query Analyzer y
da bien el resultado, pero cuando intento ejecutar la vista me da error, me
da el siguiente error: {Microsoft}{ODBC SQL Server Driver}{SQL Server}
Internal SQL Server Error , el script es el siguiente:

CREATE VIEW dbo.SaldosClientes
AS
select cod_cliente,producto as cod_producto,'P' AS tipo,'0' as
agente,numero,'0' as año,Saldo_Unidades,saldo_bultos, Saldo_peso From
dbo.Saldosbodegapropia where (saldo_unidades>0)
UNION
select cod_cliente,producto as cod_producto, 'F' as tipo,agente,numero, año,
Saldo_Unidades,Saldo_bultos, Saldo_peso From dbo.Saldosbodegafiscal where
(saldo_unidades>0)

Esto lo pruebo en el SQL Query Analyzer y funciona bien, pero cuando ejecuto
la vista no... alguien prodria darme una manita con esto, se lo agradeceria
mucho.


Respuesta Responder a este mensaje
#3 BitOne®
14/11/2006 - 16:31 | Informe spam
Desde donde la estas intentando ejecutar?

BitOne®
"Oliver Cordova" wrote in message
news:
Hola !! tengo un problemita, tengo dos vistas y necesito unir el resultado


de
ambas vistas en una tercera, el script lo pruebo en el SQL Query Analyzer


y
da bien el resultado, pero cuando intento ejecutar la vista me da error,


me
da el siguiente error: {Microsoft}{ODBC SQL Server Driver}{SQL Server}
Internal SQL Server Error , el script es el siguiente:

CREATE VIEW dbo.SaldosClientes
AS
select cod_cliente,producto as cod_producto,'P' AS tipo,'0' as
agente,numero,'0' as año,Saldo_Unidades,saldo_bultos, Saldo_peso From
dbo.Saldosbodegapropia where (saldo_unidades>0)
UNION
select cod_cliente,producto as cod_producto, 'F' as tipo,agente,numero,


año,
Saldo_Unidades,Saldo_bultos, Saldo_peso From dbo.Saldosbodegafiscal where
(saldo_unidades>0)

Esto lo pruebo en el SQL Query Analyzer y funciona bien, pero cuando


ejecuto
la vista no... alguien prodria darme una manita con esto, se lo


agradeceria
mucho.


Respuesta Responder a este mensaje
#4 Oliver Cordova
14/11/2006 - 16:58 | Informe spam
Si lo ejecuto en el Query Analyzer funciona bien!!!

"Maxi" wrote:

Hola, si ejecutas la vista en el query analizer funciona?


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"Oliver Cordova" escribió en el
mensaje news:
> Hola !! tengo un problemita, tengo dos vistas y necesito unir el resultado
> de
> ambas vistas en una tercera, el script lo pruebo en el SQL Query Analyzer
> y
> da bien el resultado, pero cuando intento ejecutar la vista me da error,
> me
> da el siguiente error: {Microsoft}{ODBC SQL Server Driver}{SQL Server}
> Internal SQL Server Error , el script es el siguiente:
>
> CREATE VIEW dbo.SaldosClientes
> AS
> select cod_cliente,producto as cod_producto,'P' AS tipo,'0' as
> agente,numero,'0' as año,Saldo_Unidades,saldo_bultos, Saldo_peso From
> dbo.Saldosbodegapropia where (saldo_unidades>0)
> UNION
> select cod_cliente,producto as cod_producto, 'F' as tipo,agente,numero,
> año,
> Saldo_Unidades,Saldo_bultos, Saldo_peso From dbo.Saldosbodegafiscal where
> (saldo_unidades>0)
>
> Esto lo pruebo en el SQL Query Analyzer y funciona bien, pero cuando
> ejecuto
> la vista no... alguien prodria darme una manita con esto, se lo
> agradeceria
> mucho.
>
>



Respuesta Responder a este mensaje
#5 Oliver Cordova
14/11/2006 - 16:59 | Informe spam
Ya probe usar el union all y me da el mismo error, ya intente quitar los
campos con valores constantes, es mas intente dejar un solo campo y me da el
mismo error, seleccione el campo cod_cliente unicamente de ambas vistas y me
dio el mismo error

"Alejandro Mesa" wrote:

Oliver,

No se por que esta dando ese error, pero si te puedo recomendar usar el
operador "union all" en vez de el que estas usando. Si te das cuenta, estas
incluyendo una columna llamada [tipo], con valor constante que es diferente
en cada sentencia, por lo que las filas resultado de cada sentencia numca
seran iguales. El operador "union all" consume menos recursos.

CREATE VIEW dbo.SaldosClientes
AS
select
cod_cliente,
producto as cod_producto,
'P' AS tipo, - P
'0' as agente,
numero,
'0' as año,
Saldo_Unidades,
saldo_bultos,
Saldo_peso
From
dbo.Saldosbodegapropia
where
(saldo_unidades>0)

UNION ALL

select
cod_cliente,
producto as cod_producto,
'F' as tipo, - F
agente,
numero,
año,
Saldo_Unidades,
Saldo_bultos,
Saldo_peso
From
dbo.Saldosbodegafiscal
where
(saldo_unidades>0)
GO


AMB

"Oliver Cordova" wrote:

> Hola !! tengo un problemita, tengo dos vistas y necesito unir el resultado de
> ambas vistas en una tercera, el script lo pruebo en el SQL Query Analyzer y
> da bien el resultado, pero cuando intento ejecutar la vista me da error, me
> da el siguiente error: {Microsoft}{ODBC SQL Server Driver}{SQL Server}
> Internal SQL Server Error , el script es el siguiente:
>
> CREATE VIEW dbo.SaldosClientes
> AS
> select cod_cliente,producto as cod_producto,'P' AS tipo,'0' as
> agente,numero,'0' as año,Saldo_Unidades,saldo_bultos, Saldo_peso From
> dbo.Saldosbodegapropia where (saldo_unidades>0)
> UNION
> select cod_cliente,producto as cod_producto, 'F' as tipo,agente,numero, año,
> Saldo_Unidades,Saldo_bultos, Saldo_peso From dbo.Saldosbodegafiscal where
> (saldo_unidades>0)
>
> Esto lo pruebo en el SQL Query Analyzer y funciona bien, pero cuando ejecuto
> la vista no... alguien prodria darme una manita con esto, se lo agradeceria
> mucho.
>
>
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida