【发布时间】:2016-05-03 22:24:42
【问题描述】:
在 SQL 中,'A' = 'a' 吗?
我获取了使用 sql 下载的结果,两列中的值匹配但它们不应该匹配。当我试图寻找差异时,唯一的差异是单词中间的大写字母。
有没有办法让 SQL 不区分大小写?例如 THERE 等于 There 也等于 there 或 thERE?
【问题讨论】:
标签: postgresql
在 SQL 中,'A' = 'a' 吗?
我获取了使用 sql 下载的结果,两列中的值匹配但它们不应该匹配。当我试图寻找差异时,唯一的差异是单词中间的大写字母。
有没有办法让 SQL 不区分大小写?例如 THERE 等于 There 也等于 there 或 thERE?
【问题讨论】:
标签: postgresql
在比较之前使用 LOWER 函数将字符串转换为小写。
像这样:
SELECT *
FROM tableName
WHERE LOWER(columnName)='a'
使用 ILIKE 代替 LIKE
SELECT * FROM tablename WHERE columnName ILIKE 'a'
【讨论】:
SELECT * from table_name where col ilike 'a'
使用 ilike 或 lower() 或 upper()
【讨论】: