Select de un Union

31/05/2005 - 14:31 por akratch | Informe spam
Hola, necesito hacer una select por encima de una subselect creada a
partir de un union.
En ORACLE lo hacía de la siguiente manera y me funcionaba:

Select campo1
FROM (
select c1 from tbl1 as campo1
union
select d1 from tbl2 as campo1
)

Hago esto en sql Transact y no me funciona, me dice que hay error cerca
del ')' y no se porque.

¿Alguien puede ayudarme y decirme cómo puede ejecutar esto en sql Server?

Muchas Gracias.

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
31/05/2005 - 14:50 | Informe spam
Debes asignarle un alias a la tabla derivada.

Select campo1
FROM (
select c1 as campo1 from tbl1
union
select d1 as campo1 from tbl2
) as t1


AMB

"Skratch" wrote:

Hola, necesito hacer una select por encima de una subselect creada a
partir de un union.
En ORACLE lo hacía de la siguiente manera y me funcionaba:

Select campo1
FROM (
select c1 from tbl1 as campo1
union
select d1 from tbl2 as campo1
)

Hago esto en sql Transact y no me funciona, me dice que hay error cerca
del ')' y no se porque.

¿Alguien puede ayudarme y decirme cómo puede ejecutar esto en sql Server?

Muchas Gracias.


Respuesta Responder a este mensaje
#2 Maxi
31/05/2005 - 14:53 | Informe spam
Hola, es que debes ponerle el alias al subselect,

use northwind

select campo1 from (select customerid as campo1 from customers union
select contactName as campo1 from customers) tx

En tu caso seria:


Select campo1
FROM (
select c1 from tbl1 as campo1
union
select d1 from tbl2 as campo1
) tx


Salu2
Maxi


"Skratch" escribió en el mensaje
news:
Hola, necesito hacer una select por encima de una subselect creada a
partir de un union.
En ORACLE lo hacía de la siguiente manera y me funcionaba:

Select campo1
FROM (
select c1 from tbl1 as campo1
union
select d1 from tbl2 as campo1
)

Hago esto en sql Transact y no me funciona, me dice que hay error cerca
del ')' y no se porque.

¿Alguien puede ayudarme y decirme cómo puede ejecutar esto en sql Server?

Muchas Gracias.

Respuesta Responder a este mensaje
#3 sckratch
01/06/2005 - 08:17 | Informe spam
Muchas gracias, me ha funcionado perfectamente.
Hasta otra.

Alejandro Mesa wrote:

Debes asignarle un alias a la tabla derivada.

Select campo1
FROM (
select c1 as campo1 from tbl1
union
select d1 as campo1 from tbl2
) as t1


AMB

"Skratch" wrote:

> Hola, necesito hacer una select por encima de una subselect creada a
> partir de un union.
> En ORACLE lo hacà­a de la siguiente manera y me funcionaba:
>
> Select campo1
> FROM (
> select c1 from tbl1 as campo1
> union
> select d1 from tbl2 as campo1
> )
>
> Hago esto en sql Transact y no me funciona, me dice que hay error cerca
> del ')' y no se porque.
>
> ¿Alguien puede ayudarme y decirme cómo puede ejecutar esto en sql Server?
>
> Muchas Gracias.
>
>
Respuesta Responder a este mensaje
#4 skratch
01/06/2005 - 08:21 | Informe spam
Muchas gracias, me ha funcionado perfectamente.
Hasta otra.


Maxi wrote:

Hola, es que debes ponerle el alias al subselect,

use northwind

select campo1 from (select customerid as campo1 from customers union
select contactName as campo1 from customers) tx

En tu caso seria:


Select campo1
FROM (
select c1 from tbl1 as campo1
union
select d1 from tbl2 as campo1
) tx
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida