【问题标题】:Like search not returning records when where method does就像搜索在 where 方法执行时不返回记录
【发布时间】:2013-10-31 16:37:42
【问题描述】:

我有以下问题

Suburb.where("name ILIKE ?", '%#{"Camp Hill"}%').to_a

返回一个空数组。但是,如果我运行

Suburb.where(name: "Camp Hill").to_a

我收到了一条记录。我不知道为什么这不起作用。我是否缺少 postgresql 中 ILIKE 的细微差别?

【问题讨论】:

    标签: sql ruby-on-rails postgresql ruby-on-rails-4 sql-like


    【解决方案1】:

    尝试以下方法:

    Suburb.where("name ILIKE ?", '%Camp Hill%')
    

    如果您想使用变量代替Camp Hill,那么您需要确保用双引号将字符串括起来以使插值工作而不是单引号,如下所示(注意您在其中的封闭双引号'已使用单引号):

    Suburb.where("name ILIKE ?", "%#{my_var}%")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-09
      • 2017-10-05
      • 1970-01-01
      • 1970-01-01
      • 2014-09-03
      • 2019-01-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多