0

クエリ結果カーソルから配列を作成する最適な方法は何ですか?

results = @db.query("SELECT * FROM mytable")

results.eachを配列に変換し、結果に格納したいと思います。

4

1 に答える 1

0

あなたは多くのコンテキスト(あなたが使用しているdb gemなど)を与えていません。

ただし、頭のてっぺんからいくつかの方法を考えることができます。

reuslts.to_a # might not work (depends on how you're accessing the db)

a = []
results.each { |r| a << r } # will definitely work assuming `each` is defined

この#queryメソッドは、正当な理由でジェネレーターを返す可能性が高いことに注意してください。結果を配列に変換することは、無意味なメモリの浪費になります(そして時間がかかります)。使用#eachする方が効率的であるため、使用することをお勧めします。

于 2012-09-04T22:37:14.410 に答える