使用 PostgreSQL 创建全文搜索引擎1
-- 创建全文搜索配置
CREATE EXTENSION IF NOT EXISTS pg_trgm;
-- 创建一个全文搜索的索引
CREATE INDEX IF NOT EXISTS idx_product_name_search ON products USING gin(to_tsvector('english', name));
-- 使用全文搜索查询
SELECT * FROM products
WHERE to_tsvector('english', name) @@ to_tsquery('english', '?');
这个例子展示了如何在PostgreSQL中使用pg\_trgm扩展来创建一个基于字符串相似度的索引,以及如何使用全文搜索查询来查找与提供的搜索词相匹配的产品名称。在这个例子中,?
是一个占位符,代表用户输入的搜索词。这个查询将返回所有其名称与搜索词相关联的产品。
评论已关闭