我有搜索在網絡上許多天似乎互聯網從來沒有聽說過我的問題:的Postgres 9.1全文搜索返回任何結果
我有一個郵政地址數據庫表保存有關英國37M記錄,其中有一個地理空間索引和來源的全文索引像這樣創建:
create index on gb_locations using gin(to_tsvector('english', "Postcode" || ' ' || "Postcode_outcode" || ' ' || "Road" || ' ' || "Neighbourhood" || ' ' || "Admin2" || ' ' || "Admin3");)
我的全文搜索的格式爲:
SELECT * FROM gb_locations
WHERE
to_tsvector('english', "Postcode" || ' ' || "Postcode_outcode" || ' ' || "Road" || ' ' || "Neighbourhood" || ' ' || "Admin2" || ' ' || "Admin3") @@ plainto_tsquery('english', 'greenham road rg14')
查詢工作對於大多數英國地址來說都很好,特別是在倫敦地區,但是對於更遠的地點來說,查詢不會返回任何結果。
我已經驗證記錄存在於表格中,因爲我可以使用地理空間搜索來找到它,但是對於全文搜索,似乎數據庫並不知道它。
這是交代:
Bitmap Heap Scan on gb_locations (cost=52.04..56.10 rows=1 width=521)
Recheck Cond: (to_tsvector('english'::regconfig, ((((((((((("Postcode")::text || ' '::text) || ("Postcode_outcode")::text) || ' '::text) || "Road") || ' '::text) || ("Neighbourhood")::text) || ' '::text) || ("Admin2")::text) || ' '::text) || ("Admin3")::text)) @@ '''greenham'' & ''road'' & ''rg14'''::tsquery)
-> Bitmap Index Scan on text_search_index (cost=0.00..52.04 rows=1 width=0)
Index Cond: (to_tsvector('english'::regconfig, ((((((((((("Postcode")::text || ' '::text) || ("Postcode_outcode")::text) || ' '::text) || "Road") || ' '::text) || ("Neighbourhood")::text) || ' '::text) || ("Admin2")::text) || ' '::text) || ("Admin3")::text)) @@ '''greenham'' & ''road'' & ''rg14'''::tsquery)
任何poiners將不勝感激。
行中的字段的值是什麼預期會匹配'plainto_tsquery('english','greenham road rg14')'? –
郵編= RG147SW Postcode_outcode = RG14 路=格林漢姆路 鄰居=紐伯裏Admin2的= NULL 口語陪練=西伯克郡 – PowerAktar