Oracle
 sql >> база данни >  >> RDS >> Oracle

Спазвайте реда от клауза „IN“.

Няма да има надеждно подреждане, освен ако не използвате клауза ORDER BY ..

SELECT SomeField,OtherField
FROM TestResult 
WHERE TestResult.SomeField IN (45,2,445,12,789)
order by case TestResult.SomeField
         when 45 then 1
         when 2  then 2
         when 445 then 3
         ...
         end

Можете да разделите заявката на 5 заявки, обединени заедно...

SELECT SomeField,OtherField
FROM TestResult 
WHERE TestResult.SomeField = 4
union all
SELECT SomeField,OtherField
FROM TestResult 
WHERE TestResult.SomeField = 2
union all
...

Бих се доверявал повече на предишния метод и вероятно ще се представи много по-добре.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Поетапно APPL_TOP в Oracle Applications R12

  2. Как да свия временното пространство за таблица в oracle?

  3. ORA-01017 Невалидно потребителско име/парола при свързване към 11g база данни от 9i клиент

  4. Използване на подзаявка в изявление за проверка в Oracle

  5. MySQL еквивалент на ORACLES rank()