Hola anteriormente habia solicitado ayuda con esto:
Tengo una tabla llamada Products en la cual hay una columna que se llama categoryid, entonces lo que quiero hacer es desplegar la columna categoryid dos veces en una misma consulta, una ordenada en forma ascendente y otra en forma ascendente, mas o menos asi:
CategoryId------------Categoryid
1------------------------- 3
2------------------------- 2
3------------------------- 1
anteriormente me habian ayudado con este codigo :
------------------------------------------------------------------------------------------
--Tablas que contendrán los resultados. Las columnas
--IDENTITY se usaran para vincular ambos
use Northwind
DECLARE @topDesc TABLE(Id SMALLINT IDENTITY(1,1), CategoryID int)
DECLARE @topAsc TABLE(Id SMALLINT IDENTITY(1,1), CategoryID int)
--Obtener valores ascendentes
INSERT INTO @topAsc(CategoryID)
SELECT TOP 83 CategoryID
FROM products
ORDER BY categoryID ASC
--Obtener valores descendentes
INSERT INTO @topDesc(CategoryID)
SELECT TOP 83 CategoryID
FROM products
ORDER BY categoryID DESC
--Vincular ambos resultados
SELECT a.CategoryID AS CategoryIdAsc, d.CategoryID AS CategoryIdDesc
FROM @topAsc AS a
INNER JOIN @topDesc AS d
ON a.Id = d.Id
---------------------------------------------------------------------------------------------
pero yo habia desarrollado esto:
use Northwind
select a.categoryid, b.categoryid
from products as a, products as b
ORDER BY a.categoryid, b.categoryid DESC
GO
y me da como resultado las dos columnas ordenadas pero el numero de registros me los eleva al cuadrado, entonces ya no tengo 83 registros sino 6889 .
alguien sabe porque???