Pau*_*end 41 string postgresql indexing
我如何仅根据小写设置索引?
即使实际字段包含大写和小写字母.
此外,我可以运行查询并只返回小写索引值吗?
Poi*_*nty 61
您可以创建索引并将字段转换为大写或小写.然后当你进行查询时,你可以做同样的转换,它会做正确的事情.
所以:
CREATE UNIQUE INDEX lower_case_username ON users ((lower(username)));
Run Code Online (Sandbox Code Playgroud)
然后查询同样的事情:
SELECT username FROM users WHERE lower(username) = 'bob';
Run Code Online (Sandbox Code Playgroud)
根据文档,您可以这样做:
CREATE UNIQUE INDEX lower_title_idx ON films ((lower(title)));
Run Code Online (Sandbox Code Playgroud)