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

Tìm giá trị tối thiểu thứ N của giá trị Varchar trong Oracle

Nếu bạn muốn tìm giá trị thứ N của bất kỳ thứ gì thì hàm phân tích NTH_VALUE() là một nơi tốt để bắt đầu.

Giả sử bạn muốn điều này chỉ dựa trên phần số, bạn phải thay thế mọi thứ không phải là số, bạn có thể sử dụng REGEXP_REPLACE()

select regexp_replace(escalation_level, '[^[:digit:]]')
  from my_table

Để nhận được giá trị thứ N cho CONFIG_ID đã cho, nó sẽ là:

select nth_value(escalation_level, n)
         over ( partition by config_id 
                    order by regexp_replace(escalation_level, '[^[:digit:]]') )
  from my_table

ở đâu n là chỉ mục của giá trị bạn muốn trả về.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Khi tôi gọi PreparedStatement.cancel () trong ứng dụng JDBC, nó có thực sự giết nó trong cơ sở dữ liệu Oracle không?

  2. hai phép nối bên ngoài bên trái không hoạt động Oracle sql

  3. Cách xác định kích thước bảng trong Oracle

  4. Những điều bạn phải biết về Bảng FND_LOBS trong Ứng dụng Oracle

  5. Thời lượng của dữ liệu trong bảng Tạm thời chung?