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

Tìm giá trị thấp nhất trong bảng lớn hơn một giá trị nhất định

SELECT  *
FROM    (
        SELECT  *
        FROM    (
                SELECT  *
                FROM    mytable
                WHERE   value > 10000
                ORDER BY
                        value
                )
        UNION ALL
        SELECT  *
        FROM    (
                SELECT  *
                FROM    mytable
                ORDER BY
                        value DESC
                )
        )
WHERE   rownum = 1

Cả hai điều này sẽ sử dụng hiệu quả một chỉ mục trên mytable(value)COUNT(STOPKEY) .

Xem bài viết này trong blog của tôi để biết chi tiết về hiệu suấ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. PL / SQL - thực thi ngay lập tức trong hàm pipelined

  2. Cách tìm nạp tên ràng buộc kiểm tra do hệ thống tạo ra của cột bảng trong oracle

  3. Kết nối Oracle với SQL Server thông qua liên kết cơ sở dữ liệu

  4. Làm thế nào để có một tổ hợp khóa chính có thể có giá trị null?

  5. ORA-06531 sau khi nâng cấp Oracle