bueno amigo soy nuevo en este foro y tengo el siguiente problema, tengo q hacer un procedimiento de almacenado para ordenar mi tabla de "n" cantidad de valores, como muchos saben en sql no existe el ciclo for asi q lo hice con while pero el procedimiento no me lo ordena. Este es el procedimiento que hice:
Código SQL:
Ver originalCREATE PROCEDURE OrdenarDatos
AS
BEGIN
DECLARE
@i INT = 1,
@j INT = 1,
@arreglo1 INT ,
@arreglo2 INT ,
@n INT
SET @n =( SELECT [COLOR="Magenta"]MAX (posicion) FROM Arreglo)
WHILE (@i<@n-1)
BEGIN
WHILE (@j<@n-1)
BEGIN
SET @arreglo1 =( SELECT dato FROM Arreglo WHERE @j = posicion)
SET @arreglo2 =( SELECT dato FROM Arreglo WHERE (@j + 1) = posicion)
IF (@arreglo1>=@arreglo2)
BEGIN
DECLARE
@tem INT = @arreglo2
UPDATE Arreglo
SET dato = @arreglo1
WHERE (@j+1)=posicion
UPDATE Arreglo
SET dato = @tem
WHERE @j=posicion
SET @j = @j+1
CONTINUE
END
SET @j = @j+1
END
SET @i = @i+1
CONTINUE
END
END
Segun yo el codigo esta bien los ciclos de repeticion orientados en el metodo burbuja, si podrian ayudarme se los agradeceria de antemano muchas gracias