Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Oracle SQL:Chọn một hàng có ngày mới nhất giữa nhiều cột

Tôi nghĩ cấu trúc bạn muốn là:

select id
from (SELECT ID
      FROM EXAMPLE_TABLE
      order by GREATEST(CREATE_DATE, UPDATE_DATE) desc
     )
where rownum = 1

Tuy nhiên, tôi cho rằng có thể một trong các ngày là NULL. Nếu vậy:

select id
from (SELECT ID
      FROM EXAMPLE_TABLE
      order by coalesce(GREATEST(CREATE_DATE, UPDATE_DATE), CREATE_DATE) desc
     )
where rownum = 1

Các truy vấn này sắp xếp thứ tự theo giá trị lớn hơn trong hai giá trị trên mỗi hàng, sau đó chọn giá trị lớn nhất.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. lỗi 3706 nhà cung cấp không thể được tìm thấy. Nó có thể không được cài đặt đúng cách

  2. Lỗi khi cố gắng truy xuất văn bản do lỗi ORA-01804

  3. Đưa các trường CLOB vào tệp?

  4. Làm cách nào để tính giá trị trung bình của một cột và sau đó đưa nó vào một truy vấn chọn trong oracle?

  5. Sử dụng thủ tục pl-sql hoặc con trỏ để chọn 3 thứ hạng hàng đầu