【发布时间】:2013-04-25 01:06:22
【问题描述】:
我在这里、谷歌或文档中找不到答案...
我需要对数组类型进行不区分大小写的选择。
如果:
value = {"Foo","bar","bAz"}
我需要
SELECT value FROM table WHERE 'foo' = ANY(value)
匹配。
我尝试了很多 lower() 的组合,但都没有成功。
ILIKE 而不是 = 似乎可行,但我一直对 LIKE 感到紧张 - 这是最好的方法吗?
【问题讨论】:
-
所以 ILIKE 被排除在下面@Chris Travers 所指出的 - 一个值很可能合法地包含下划线
-
那么@Erwin 这不是一个愚蠢的问题吗? :) (我第一次被编辑——不是抱怨,只是着迷)
-
恰恰相反:这是一个非常有趣的问题,IMO,它已经吸引了许多有趣的答案。但主要是我编辑了那一点,因为我们试图将问题和答案中的噪声比保持在 SO 上。一些噪音会进入 cmets。 :)
标签: sql postgresql pattern-matching case-insensitive