Có rất nhiều kết quả không cần thiết bằng cách sử dụng phương thức contains() trong truy vấn của tôi. Đừng nói với tôi để sử dụng như hoặc cái gì khác. Nó được hardcoded và không thể thay đổi.Cách chứa() trong PL-SQL hoạt động?
Trả lời
Chứa được sử dụng trên các lĩnh vực văn bản rằng có một 'BỐI CẢNH Index', mà chỉ một trường văn bản để tìm kiếm. Việc sử dụng các ý kiến như thế này (sử dụng toán tử score
để hiển thị những gì được trả về từ các contains
khoản dựa trên 1 trong contains
phù hợp với 1 trong score
):
SELECT score(1), value
FROM table_name
WHERE CONTAINS(textField, 'searchString', 1) > 0;
Đối với dữ liệu như thế này trong bảng table_name
value | textField
-------|-----------------------------------------------
A | 'Here is searchString. searchString again.'
B | 'Another string'
C | 'Just one searchString'
truy vấn đó sẽ trở
2 A
1 C
Vì vậy chứa là tương tự như giống như, nhưng sẽ đếm số lần chuỗi xuất hiện trong trường văn bản. Tôi không thể tìm thấy tài nguyên sử dụng Chứa cách nó được sử dụng trong truy vấn bạn đã đăng, nhưng tôi nghĩ rằng sẽ trả về các hàng có dFullText
có ít nhất một trường hợp car
trong đó hoặc tương đương với sql này:
Select * from blabla where dFullText like "%car%"
Here là một nguồn khác.
Có sự khác biệt nào giữa hàm contains() và instr() không? – Rene
@Rene, vâng, chúng khác nhau. 'Contains()' đếm số lần chuỗi xuất hiện trong trường văn bản và trả về số đó. 'instr()' tìm kiếm một chuỗi trong một trường (hoặc chuỗi khác) và trả về chỉ mục của chuỗi tìm kiếm đầu tiên được tìm thấy (hoặc 0 nếu nó không được tìm thấy). Xem ví dụ về 'instr()' tại http://www.techonthenet.com/oracle/functions/instr.php – rosscj2533
Xem ví dụ này từ oracle.com
declare
rowno number := 0;
begin
for c1 in (SELECT SCORE(1) score, title FROM news
WHERE CONTAINS(text, 'oracle', 1) > 0
ORDER BY SCORE(1) DESC)
loop
rowno := rowno + 1;
dbms_output.put_line(c1.title||': '||c1.score);
exit when rowno = 10;
end loop;
end;
- 1. Nếu điều kiện EXISTS không hoạt động với PLSQL
- 2. Phản ánh trong PLSQL?
- 3. Buộc adjustPan trong hoạt động chứa scrollview
- 4. cách gọi hàm trong hàm plsql
- 5. tìm hiểu cách thức hoạt động của vùng chứa trong css
- 6. Chọn từ mảng PLSQL Associative?
- 7. mô hình cakephp virtualFields không hoạt động qua chứa
- 8. ! Chứa() đối tượng Danh sách không hoạt động
- 9. PLSQL Procudure (Oracle) So sánh một biến trong mệnh đề
- 10. Java TreeSet: xóa và chứa() không hoạt động
- 11. Mảng trong mệnh đề mệnh đề IN() trong PLSQL
- 12. Kết hợp các bộ sưu tập trong PLSQL
- 13. PLSQL JDBC: Cách nhận ID hàng cuối cùng?
- 14. Làm cho vùng chứa tùy chỉnh hoạt động với ** kwargs (cách Python mở rộng các arg?)
- 15. Ý nghĩa biểu tượng PLSQL "=>"
- 16. Oracle: nhận tài liệu tham khảo trong PLSQL
- 17. Razor View Engine: Một cây biểu hiện có thể không chứa một hoạt động năng động
- 18. Kiểm tra bản ghi IS NOT NULL trong plsql
- 19. Cách pause() hoạt động?
- 20. Cách DotNetOpenAuth hoạt động
- 21. Lỗi: Một cây biểu hiện có thể không chứa một hoạt động năng động
- 22. cách TimeZone.getDefault() hoạt động?
- 23. Cách DefaultAnnotationHandlerMapping hoạt động
- 24. Cách sendmsg hoạt động?
- 25. Cách MonoTouch hoạt động?
- 26. Cách đại biểu hoạt động (trong nền)?
- 27. Cách Adblock Plus hoạt động trong Chrome?
- 28. cách hoạt động "$ _ & 1" trong perl
- 29. Cách MVC hoạt động trong magento
- 30. Cách Proguard hoạt động trong Intellij Idea?
Bạn có thể đăng truy vấn không? – Padmarag
Tôi có thể chuyển bất kỳ thông số nào vào chứa để thu hẹp kết quả tìm kiếm cho kết quả chính xác hay không. – Artic
Chọn * từ blabla chứa (dFullText, "ô tô") – Artic