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

Как да използвам правилно Oracle ORDER BY и ROWNUM?

where операторът се изпълнява преди order by . Така че желаната от вас заявка казва „вземете първия ред и след това го поръчайте по t_stamp нападане „. И това не е, което възнамерявате.

Методът на подзаявката е правилният метод за това в Oracle.

Ако искате версия, която работи и на двата сървъра, можете да използвате:

select ril.*
from (select ril.*, row_number() over (order by t_stamp desc) as seqnum
      from raceway_input_labo ril
     ) ril
where seqnum = 1

Външният * ще върне "1" в последната колона. Ще трябва да изброите колоните поотделно, за да избегнете това.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да добавите индикатора AD/BC към дата в Oracle

  2. Как да получа текущата година, използвайки SQL на Oracle?

  3. Oracle:Преобразувайте валутната сума в думи с помощта на PL/SQL

  4. Как да създадете колона, която не е нула в изглед

  5. Управление на обработката на грешки при изпълнение на sqlplus от скриптове на обвивката