真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

包含postgresql推薦的詞條

PostgreSQL全文檢索簡介

PostgreSQL自帶有一個簡易的全文檢索引擎,可以實現(xiàn)小規(guī)模數(shù)據(jù)量的全文檢索功能。本文我們將引導介紹一下這個功能,對于小數(shù)據(jù)量的搜索這個功能是足夠使用的,而無需搭建額外的ES等重量級的全文檢索服務器。

目前創(chuàng)新互聯(lián)建站已為上1000家的企業(yè)提供了網站建設、域名、虛擬空間、網站托管、服務器托管、企業(yè)網站設計、欒城網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

PG的全文檢索操作符是 @@ ,當一個 tsvector (文檔)和 tsquery (條件)匹配時返回 true ,并且前后順序無影響:

和普通的SQL查詢一樣,只要在 WHERE 條件中使用這個符號就代表使用全文檢索條件篩選文檔了。如:

@@ 操作符支持隱式轉換,對于 text 類型可以無需強類型轉換( ::tsvector 或 to_tsvector(config_name, text) ),所以這個操作符實際支持的參數(shù)類型是這樣的:

tsquery 查詢條件并不是簡單的正則,而是一組搜索術語,使用并且使用布爾操作符 (AND)、 | (OR)和 ! (NOT)來組合它們,還有短語搜索操作符 - (FOLLOWED BY)。更詳細的語法參見 此文檔 。

此外,PostgreSQL還提供了兩個相對簡化的版本 plainto_tsquery 和 phraseto_tsquery 。

plainto_tsquery ( plainto_tsquery([ config regconfig, ] querytext text) returns tsquery )用戶將未格式化的 text 經過分詞之后,插入 符號轉為 tsquery :

phraseto_tsquery ( phraseto_tsquery([ config regconfig, ] querytext text) returns tsquery )行為和 plainto_tsquery 行為類似,但是分詞之后不是插入 而是 - (FOLLOWED BY):

使用索引可以加快全文檢索的速度。對于全文檢索來說,可選的索引類型是 GIN (通用倒排索引)和 GIST (通用搜索樹),官方文檔更推薦使用 GIN索引 。創(chuàng)建一個 GIN 索引的范例:

也可以是一個連接列:

還可以單獨創(chuàng)建一個 tsvector 列,為這個列創(chuàng)建索引:

除了普通的 ORDER BY 條件之外,PostgreSQL為全文檢索提供了兩個可選的排序函數(shù) ts_rank([ weights float4[], ] vector tsvector, query tsquery [, normalization integer ]) returns float4 和 ts_rank_cd([ weights float4[], ] vector tsvector, query tsquery [, normalization integer ]) returns float4 ,以便實現(xiàn)基于 權重 的排序。

此外,對于PostgreSQL 9.6以上的版本還可以使用 RUM index 排序。(注意,這個是擴展,默認不包含)。

PostgreSQL默認的分詞字典中并不包含中文分詞字典,因此我們必須手工引入。目前一個比較好的項目是 zhparser ,同時這個插件也是阿里云的RDS默認包含的。安裝和啟用沒什么好說的。值得一提的是分詞配置參數(shù)。

在 CREATE EXTENSION 之后,必須配置分詞參數(shù)才能正確進行分詞和查找,否則什么都查不到。官方文檔提供的一個配置策略是:

n,v,a,i,e,l 這幾個字母分別表示一種token策略,只啟用了這幾種token mapping,其余則被屏蔽。具體支持的參數(shù)和含義可以用 \dFp+ zhparser 顯示:

WITH simple 表示詞典使用的是內置的simple詞典,即僅做小寫轉換。根據(jù)需要可以靈活定義詞典和token映射,以實現(xiàn)屏蔽詞和同義詞歸并等功能。

比如我們看下面這個例子:

可以看到 江淮 這個詞組在查詢的時候被忽略了,我們啟用 j (abbreviation,簡稱)再看看結果:

所以實際使用中要設置合理的token types,過少將導致搜索結果不準確,過多將導致性能下降。此外,還有一些諸如 短詞復合: zhparser.multi_short = f 這一類的控制分詞結果的選項,根據(jù)實際使用酌情開啟。

請問各位大俠:誰有有關postgreSQL的資料,可否推薦一二,本人剛剛接觸,望給予幫助,謝謝!!

PostgreSQL 幫助原文檔 ,如果覺得英文看得慢 ,可以先看 8點幾版本 的中文 版 幫助

有哪些值得推薦的學習 PostgreSQL 的書籍或資料

最近我也在學PostgreSQL。主要是因為他是免費、開源的,所以在Linux下裝了這個。以前用慣了SQL Server的圖形界面,現(xiàn)在有些不習慣了。

但無論什么數(shù)據(jù)庫,SQL語句、表結構、視圖、存儲過程、觸發(fā)器,都是差不多的。這些都是最重要的,只是在數(shù)據(jù)庫的管理上,以及這些在數(shù)據(jù)庫系統(tǒng)的內部管理上不同而已。


分享名稱:包含postgresql推薦的詞條
本文URL:http://weahome.cn/article/dscdpci.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部