Ruby 1.9を使用しています。角括弧をかっこで置き換えます。
私は(文で)SQLクエリ内でそれを適用するために、フォーマット('1', '2', '3')
に変換する必要があり、データベースがMySQLのある配列[1,2,3]
を持っています。いくつかの良い解決策を提案してください。
感謝:)
Ruby 1.9を使用しています。角括弧をかっこで置き換えます。
私は(文で)SQLクエリ内でそれを適用するために、フォーマット('1', '2', '3')
に変換する必要があり、データベースがMySQLのある配列[1,2,3]
を持っています。いくつかの良い解決策を提案してください。
感謝:)
あなたはまだこれをやりたいが、ちょうど楽しみのためわからない上記のコメントを見てみると:
"('#{ [1,2,3].map(&:to_s).join("\',\'") }')"
#=> "('1','2','3')"
UPDATE:@tadman
仮定からのコメントに基づいて、ここでのSQL実装は、いくつかの疑似コードです。
irb(main):003:0> array = [1,2,3,4]
=> [1, 2, 3, 4]
irb(main):004:0> array.map{|id| "$#{id}"}.join(",")
=> "$1,$2,$3,$4"
irb(main):011:0> ["SELECT * FROM table WHERE id IN (#{array.map{|id| "$#{id}" }.join(',')})", array]
=> ["SELECT * FROM table WHERE id IN ($1,$2,$3,$4)", [1, 2, 3, 4]]
[続行](https:// github。 com/jeremyevans/sequel)がこれを行います。あなた自身ではしないでください。また、Rubyをアップグレードしてみてください。 1.9は寿命を過ぎています。 – tadman
@tadman:MySQLは自動的には実行しません。アップグレードを試みます、ありがとう:) –
Rubyコードからデータベースにどのように接続していますか? 'ActiveRecord'、' Sequel'などのようなORMを使っていますか? – james246