sql >> Base de Datos >  >> RDS >> Oracle

SQL:conservar el orden basado en los parámetros de consulta

Inserte los valores en una tabla temporal y únase a su selección.

Luego puede hacer un orden natural en la columna de su tabla temporal.

CREATE GLOBAL TEMPORARY TABLE sort_table (
  value       VARCHAR2(100),
  sort_order  NUMBER
) ON COMMIT DELETE ROWS;

INSERT INTO sort_table VALUES ('B123',1);
INSERT INTO sort_table VALUES ('B483',2);
... etc. ...

select * from mytable
inner join sort_table
on mytable.mycolumn = sort_table.value
order by sort_table.sort_order;

Para borrar la tabla temporal, simplemente COMMIT .