PostgreSQL是否支持“重音不敏感”排序规则?在MicrosoftSQLServer中,可以指定“重音不敏感”排序规则(用于数据库、表或列),这意味着可以进行类似于SELECT * FROM users WHERE name LIKE 'João'若要找到带有Joao名字,姓名。我知道,可以在PostgreSQL中使用非重音串函数,但我想知道PostgreSQL是否支持这些“重音不敏感”的排序规则,因此SELECT上面会有用的。
3 回答
回首忆惘然
TA贡献1847条经验 获得超11个赞
不,PostgreSQL不支持这种排序规则。
解决办法
非重音词的全文搜索词典。
unaccent
,
CREATE EXTENSION unaccent;CREATE TEXT SEARCH CONFIGURATION mydict ( COPY = simple ); ALTER TEXT SEARCH CONFIGURATION mydict ALTER MAPPING FOR hword, hword_part, word WITH unaccent, simple;
-- Just some sample data...CREATE TABLE myTable ( myCol ) AS VALUES ('fóó bar baz'),('qux quz');-- No index required, but feel free to create oneCREATE INDEX ON myTable USING GIST (to_tsvector('mydict', myCol));
SELECT *FROM myTableWHERE to_tsvector('mydict', myCol) @@ 'foo & bar' mycol ------------- fóó bar baz(1 row)
自己不带口音。
unaccent
添加回答
举报
0/150
提交
取消