2011-12-04 14 views
5

私は基本的にデータベースにオブジェクトが存在するかどうかを調べるためにRailsでfindを実行したいと考えています。 私はCSVを持っていますが、私はそれのフォーマットをほとんど制御していません。 私はCSVに 'name'というフィールドを持っていますが、これは私が持っている例ですが、5ワード含まれています。このフィールドには名前と住所が含まれますが、どの形式にも限定されません。Railsは文字列の一部で見つける

私のデータベースには、「名前」、「アドレス1」、「アドレス2」などのフィールドがあります。 基本的には、CSV内の名前フィールドの一部がデータベース内のどのフィールドにも一致するかどうかを確認したいと思います。

私はおそらくSQLのようなコマンドを実行する必要があることを知っているが、それについてどうやって行くのか分からない。

User.where('name LIKE ?', "%#{@user.name}%") 

を与えられた文字列フラグメントのためのフィールドを見つけるためLIKE SQL文の構文は%文字を使用して文字列フラグメントを囲むようにあるので、結果のSQLが表示されます:

答えて

24

あなたはLIKEを使用してそれを行うことができますこのようなもの

"SELECT \"users\".* FROM \"users\" WHERE (name LIKE '%Rob Phillips%')"