我正在使用ruby mysql2 gem來處理數據庫。我想在一張表中列出每個地區的所有國家,然後將每個地區的點擊量加起來。在幾個數組中添加數字以及ruby
通常我會使用mysql SUM
函數,但是gem返回標題,所以這是不可能的。
相反,我得到每個地區每個國家的命中數並加起來。 該gem每個結果返回1個數組,我需要獲得該結果並將其添加到每個區域的運行總數。
這是我的代碼:
#!/usr/bin/ruby -w
# simple.rb - simple MySQL script using Ruby MySQL module
require "rubygems"
require "mysql2"
client = Mysql2::Client.new(:host => "localhost", :username => "root", :database => "cbscdn")
regions = client.query("select Id from Regions")
regions.each(:as => :array) do |rid|
hit = client.query("select hits from Countries where Regions_Id='#{rid}'")
hit.each(:as => :array) do |a|
a.map do |x|
x.to_i
end
end
end
我如何能實現每個區域運行中計?
我必須將每個數組的每個結果轉換爲fixnum,將其添加到新數組中,然後將數組中的所有值添加到數組中以獲得結果。 – jhgfds 2012-02-15 15:24:42