sql >> Database >  >> RDS >> Oracle

SQL - volgorde behouden op basis van de queryparameters

Voeg de waarden in een tijdelijke tabel in en voeg je select eraan toe.

U kunt dan een natuurlijke volgorde uitvoeren op uw tijdelijke tabelkolom.

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;

Om de tijdelijke tabel te wissen, gewoon COMMIT .



  1. Index maken in SQL om de prestaties te verbeteren

  2. Hoe een 1d-array uit een 2d-array te selecteren?

  3. Oracle Sequence nextval springt nummer heen en weer

  4. Is er een betere manier om een ​​tekstbestand van 300.000 regels te verwerken en in MySQL in te voegen?