3
之前重寫PostgreSQL的查詢我有一個Postgres客戶端發送查詢,如尋找一種方式執行它
SELECT ... FROM "public"."mycontent" "mycontent"
WHERE (strpos(substring("mycontent"."summary" from 1), 'search_string') + 1 - 1 > 0)
我們的Postgres的服務器。我希望客戶端使用我的全文搜索功能,但我無法訪問客戶端的代碼。所以我在尋找一種方法以上述形式的所有傳入查詢改寫爲這樣的:
SELECT ... FROM "public"."mycontent" "mycontent"
WHERE id in full_text_search('search_string')
注意「SEARCH_STRING」的提取,所以Postgres的規則在這裏不能使用,因爲他們沒有做這樣萃取。我希望任何人知道任何可以執行查詢重寫的postgres中間件或代理,或者還有其他更好的主意嗎?謝謝。
從理論上來說RULE可以重寫語句,但我不認爲他們可以查看SQL文本以確定它是否應該被重寫。 –