【发布时间】:2011-03-23 11:07:38
【问题描述】:
我正在使用 Postgres。
我的数据库中有一个 Artices 表,其中有一列 url 用于 url slugs。这样我就可以在网站上将该表格中的文章显示为“example.com/23323”而不是“example.com/Funny_Thing_Happened_to_Me”。
这很容易实现,然后随着文章数量的增加,我在 url slugs 上的表中添加了一个索引。
我已经意识到,虽然我希望能够在 url 中显示大写字母,但我希望它们在用户输入的内容方面不区分大小写,并且我希望在案例中强制 url 的唯一性不敏感的方式。
是否有一种直接的方法可以不区分大小写地基于文本列快速搜索,并以不区分大小写的方式强制唯一性?
我尝试使用类似 lower(url) = 的内容进行搜索,但这会导致 Postgres 决定根本不使用索引。
【问题讨论】:
标签: database postgresql search case-insensitive