本文主要介紹了Oracle 中Contains 函數的用法,查詢地址在某個城市的學生,sql語句給大家介紹的非常詳細,需要的朋友可以參考下,希望能幫助到大家。
1. 查詢住址在北京的學生
SELECT student_id,student_name FROM students WHERE CONTAINS( address, 'beijing' )
remark: beijing是一個單字,要用單引號括起來。
2. 查詢住址在河北省的學生
SELECT student_id,student_nameFROM students WHERE CONTAINS( address, '"HEIBEI province"' )
remark: HEBEI province是一個詞組,在單引號裡還要用雙引號括起來。
3. 查詢住址在河北省或北京的學生
#SELECT student_id,student_nameFROM students WHERE CONTAINS( address, '"HEIBEI province" OR beijing' )
remark: 可以指定邏輯運算子(包括AND ,AND NOT,OR )。
4. 查詢有'南京路' 字樣的位址
#SELECT student_id,student_name FROM students WHERE CONTAINS( address, 'nanjing NEAR road' )
remark: 上面的查詢將傳回包含'nanjing road','nanjing east road','nanjing west road' 等字樣的地址。
A NEAR B,表示條件: A 靠近 B。
5. 查詢以'湖' 開頭的位址
#SELECT student_id,student_name FROM students WHERE CONTAINS( address, '"hu*"' )
remark: 上面的查詢將傳回包含' hubei','hunan' 等字樣的位址。
記得是 *,且不是 %。
6. 類似加權的查詢
SELECT student_id,student_name FROM students WHERE CONTAINS( address, 'ISABOUT (city weight (.8), county wright (.4))' )
remark: ISABOUT 是這種查詢的關鍵字,weight 指定了一個介於0~1之間的數,類似係數(我的理解)。表示不同條件有不同的重點。
7. 單字的多型查詢
SELECT student_id,student_name FROM students WHERE CONTAINS( address, 'FORMSOF (INFLECTIONAL,street)' )
remark: 查詢將回傳包含'street','streets '等字樣的位址。
對動詞將回傳它的不同的時態,如:dry,將回傳 dry,dried,drying 等等。
8. 字詞查詢範例
詞查詢是對輸入到 CONTAINS 運算子中單引號間的精確單字或片語的查詢。在下列範例中,我們將尋找文字列中包含 oracle 一詞的所有文件。每行的分數由使用標籤1 的SCORE 運算子選定:
SELECT SCORE(1) title from news WHERE CONTAINS(text,'oracle',1)> 0;
在查詢表達式中,可以使用AND 和OR 等文字運算符來獲取不同結果。結構性謂詞也可以加入 WHERE 子句中。可以使用 count(*)、CTX_QUERY.COUNT_HITS 或 CTX_QUERY.EXPLAIN 來計算查詢的命中 (符合) 數目。
9 ABOUT查詢範例
在所有語言中,ABOUT查詢增加了某查詢所傳回的相關文件的數目。在英文中,ABOUT 查詢可以使用索引的主題詞元件,該元件在預設情況下建立。這樣,運算子將根據查詢的概念返回文檔,而不是僅依據所指定的精確單字或短語。例如,以下查詢將會尋找文字列中關於主題 politics 的所有文檔,而不是僅包含 politics 一詞的文檔:
SELECT SCORE(1) title from news WHERE CONTAINS(text, 'about(politics)', 1) > 0;
#如何利用contains方法實作點擊介面空白部分關閉目前面板的效果
以上是關於Oracle 中Contains 函數的用法總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!