【问题标题】:Comparing upper and lowercase letters [duplicate]比较大小写字母[重复]
【发布时间】:2016-05-03 22:24:42
【问题描述】:

在 SQL 中,'A' = 'a' 吗?

我获取了使用 sql 下载的结果,两列中的值匹配但它们不应该匹配。当我试图寻找差异时,唯一的差异是单词中间的大写字母。

有没有办法让 SQL 不区分大小写?例如 THERE 等于 There 也等于 there 或 thERE?

【问题讨论】:

    标签: postgresql


    【解决方案1】:

    在比较之前使用 LOWER 函数将字符串转换为小写。

    像这样:

    SELECT *
      FROM tableName
     WHERE LOWER(columnName)='a'
    

    使用 ILIKE 代替 LIKE

    SELECT * FROM tablename WHERE columnName ILIKE 'a'
    

    【讨论】:

      【解决方案2】:
      SELECT * from table_name where col ilike 'a'
      

      使用 ilike 或 lower() 或 upper()

      【讨论】:

        猜你喜欢
        • 2016-09-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-29
        • 2011-06-22
        • 2014-06-20
        • 1970-01-01
        相关资源
        最近更新 更多