0

次のクエリがあります

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

空の配列を返します。ただし、実行すると

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

レコードが返ってきました。なぜこれが機能しないのかわかりません。postgresql に ILIKE のニュアンス機能がありませんか?

4

1 に答える 1

2

次のことを試してください。

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

代わりに変数を使用する場合はCamp Hill、次のように、単一引用符ではなく補間を機能させるために、文字列を二重引用符で囲む必要があります (単一引用符を使用した場合は、二重引用符で囲んでください)。 :

Suburb.where("name ILIKE ?", "%#{my_var}%")
于 2013-10-31T16:42:56.873 に答える