2017-06-12 47 views
1

基本上,我希望能夠得到一個精確匹配(包括包括hashtag)進行查詢是這樣的:防止詞幹的單詞在PostgreSQL的全文檢索,從第

=#SELECT to_tsvector('english', '#adoption'); 
to_tsvector 
------------- 
'adopt':1 

相反,我想的單詞開始與#,看到:

=#SELECT to_tsvector('english', '#adoption'); 
to_tsvector 
------------- 
'#adoption':1 

這是可能的psql全文搜索?

回答

1

之前您搜索或索引,你可以替換每個#性格與你不要在你的文本中使用其他字符,但它改變了解析器的解釋:

test=> SELECT alias, lexemes FROM ts_debug('english', '#adoption'); 
┌───────────┬─────────┐ 
│ alias │ lexemes │ 
├───────────┼─────────┤ 
│ blank  │   │ 
│ asciiword │ {adopt} │ 
└───────────┴─────────┘ 
(2 rows) 

test=> SELECT alias, lexemes FROM ts_debug('english', '/adoption'); 
┌───────┬─────────────┐ 
│ alias │ lexemes │ 
├───────┼─────────────┤ 
│ file │ {/adoption} │ 
└───────┴─────────────┘ 
(1 row) 
+0

天才 - 謝謝!儘管我希望PSQL能夠擴展他們的解析器來識別主題標籤。他們全部用完了... – Mark

相關問題