Ordernar una sola select con UNION

24/08/2006 - 19:56 por Piolin Net | Informe spam
Alo!

tengo la siguiente union:

SELECT -2 AS Id, 'Panama' AS Nombre
UNION
SELECT -3 AS Id, 'Canada' AS Nombre
UNION
SELECT Id, Nombre
FROM dbo.TM_Paises
WHERE Estado = 1

quiero ordenarla alfabeticamente pero dejando los 2 primeros en ese orden
si le pongo ORDER BY Nombre me coge toda la UNION

Como podria hacerlo? Gracias

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
24/08/2006 - 20:04 | Informe spam
Trata:

...
order by
case when Id in (-2, -3) Id else 0 end asc,
Nombre asc
go


AMB


"Piolin Net" wrote:

Alo!

tengo la siguiente union:

SELECT -2 AS Id, 'Panama' AS Nombre
UNION
SELECT -3 AS Id, 'Canada' AS Nombre
UNION
SELECT Id, Nombre
FROM dbo.TM_Paises
WHERE Estado = 1

quiero ordenarla alfabeticamente pero dejando los 2 primeros en ese orden
si le pongo ORDER BY Nombre me coge toda la UNION

Como podria hacerlo? Gracias



Respuesta Responder a este mensaje
#2 jcac
24/08/2006 - 20:05 | Informe spam
Hola espero esto te sirva

Select T.Id, T.Nombre From (
SELECT -2 AS Id, 'Panama' AS Nombre
UNION
SELECT -3 AS Id, 'Canada' AS Nombre
UNION
SELECT Id, Nombre
FROM dbo.TM_Paises
WHERE Estado = 1) T
Order by T.Nombre

saludos

"Piolin Net" escribió en el mensaje
news:
Alo!

tengo la siguiente union:

SELECT -2 AS Id, 'Panama' AS Nombre
UNION
SELECT -3 AS Id, 'Canada' AS Nombre
UNION
SELECT Id, Nombre
FROM dbo.TM_Paises
WHERE Estado = 1

quiero ordenarla alfabeticamente pero dejando los 2 primeros en ese orden
si le pongo ORDER BY Nombre me coge toda la UNION

Como podria hacerlo? Gracias



Respuesta Responder a este mensaje
#3 Piolin Net
24/08/2006 - 20:15 | Informe spam
NO funciona

no reconce el nombre del campo

sin la UNION si funciona pero con ella NO

gracias

"Alejandro Mesa" wrote:

Trata:

...
order by
case when Id in (-2, -3) Id else 0 end asc,
Nombre asc
go


AMB


"Piolin Net" wrote:

> Alo!
>
> tengo la siguiente union:
>
> SELECT -2 AS Id, 'Panama' AS Nombre
> UNION
> SELECT -3 AS Id, 'Canada' AS Nombre
> UNION
> SELECT Id, Nombre
> FROM dbo.TM_Paises
> WHERE Estado = 1
>
> quiero ordenarla alfabeticamente pero dejando los 2 primeros en ese orden
> si le pongo ORDER BY Nombre me coge toda la UNION
>
> Como podria hacerlo? Gracias
>
>
>
Respuesta Responder a este mensaje
#4 Piolin Net
24/08/2006 - 20:17 | Informe spam
¿¿?? Eso tiene pinta de ordenarlo todo

gracias

"jcac" wrote:

Hola espero esto te sirva

Select T.Id, T.Nombre From (
SELECT -2 AS Id, 'Panama' AS Nombre
UNION
SELECT -3 AS Id, 'Canada' AS Nombre
UNION
SELECT Id, Nombre
FROM dbo.TM_Paises
WHERE Estado = 1) T
Order by T.Nombre

saludos

"Piolin Net" escribió en el mensaje
news:
> Alo!
>
> tengo la siguiente union:
>
> SELECT -2 AS Id, 'Panama' AS Nombre
> UNION
> SELECT -3 AS Id, 'Canada' AS Nombre
> UNION
> SELECT Id, Nombre
> FROM dbo.TM_Paises
> WHERE Estado = 1
>
> quiero ordenarla alfabeticamente pero dejando los 2 primeros en ese orden
> si le pongo ORDER BY Nombre me coge toda la UNION
>
> Como podria hacerlo? Gracias
>
>
>



Respuesta Responder a este mensaje
#5 Alejandro Mesa
24/08/2006 - 20:24 | Informe spam
OK,

select *
from
(
SELECT -2 AS Id, 'Panama' AS Nombre
UNION
SELECT -3 AS Id, 'Canada' AS Nombre
UNION
SELECT Id, Nombre
FROM dbo.TM_Paises
WHERE Estado = 1
) as t
order by
case when Id in (-2, -3) Id else 0 end asc,
Nombre asc
go

Para que el nombre 'Panama' salga primero en la lista, debes asignarle el
valor -3 a su Id y -2 a 'Canada'.


AMB

"Piolin Net" wrote:

NO funciona

no reconce el nombre del campo

sin la UNION si funciona pero con ella NO

gracias

"Alejandro Mesa" wrote:

> Trata:
>
> ...
> order by
> case when Id in (-2, -3) Id else 0 end asc,
> Nombre asc
> go
>
>
> AMB
>
>
> "Piolin Net" wrote:
>
> > Alo!
> >
> > tengo la siguiente union:
> >
> > SELECT -2 AS Id, 'Panama' AS Nombre
> > UNION
> > SELECT -3 AS Id, 'Canada' AS Nombre
> > UNION
> > SELECT Id, Nombre
> > FROM dbo.TM_Paises
> > WHERE Estado = 1
> >
> > quiero ordenarla alfabeticamente pero dejando los 2 primeros en ese orden
> > si le pongo ORDER BY Nombre me coge toda la UNION
> >
> > Como podria hacerlo? Gracias
> >
> >
> >
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida