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

Truy vấn chậm trong Java bởi JDBC nhưng không phải trong các hệ thống khác (TOAD)

nếu không có thông tin bổ sung, chúng tôi chỉ có thể giả định rằng một chỉ mục không được sử dụng với hàm to_number () được áp dụng cho cột. Như được hiển thị trong câu hỏi SO này , chuyển đổi kiểu có thể ngăn trình tối ưu hóa sử dụng chỉ mục.

Nói chung:

  • khi bạn thêm một hàm vào một cột (i-e:to_number(id) ) trình tối ưu hóa sẽ không thể sử dụng các chỉ mục thông thường trên cột đó,
  • nếu có thể, bạn nên sử dụng cột thô. Đối với exemple:thay vì WHERE trunc(col) = DATE '2009-08-27' bạn nên sử dụng:WHERE col >= DATE '2009-08-27' AND col < DATE '2009-08-28'
  • nếu bạn thực sự phải áp dụng một hàm cho một cột, bạn có thể sử dụng danh mục dựa trên chức năng


  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ấy tất cả dữ liệu bảng quan hệ bằng cách sử dụng xmlelement trong pl / sql

  2. Chuỗi được phân tách bằng dấu phẩy thành danh sách

  3. Hợp nhất một số trình kích hoạt Oracle. Bất kỳ tác động đến hiệu suất?

  4. Song song các cuộc gọi trong PL / SQL

  5. Tránh sự cố với BigDecimal khi chuyển sang Java 1.4 sang Java 1.5+