0
我有下面的查詢,將返回城市和狀態是輸入的設定點和表Metros
的所有行之間的最短距離:設置多個變量,結果查詢
@lat = row[latitude]
@long = row[longitude]
Metros.select(
"major_city
, major_state
,(latitude - " + @lat + ")**2 + (longitude - " + @long + ")**2 as 'distance'")
.group("major_city,major_state").limit(1).order('distance ASC')
什麼我現在需要做的是將結果設置爲兩個變量row[major_city]
和row[major_state]
,major_city
設置爲row[major_city]
和major_state
到row[major_state]
。
我怎樣才能完成這個任務兩個允許獨立設置兩個變量?
你是什麼意思把它作爲一個單一的記錄?你能提供一個例子嗎? – Sauron 2014-09-23 15:44:14
你的'選擇'blabla事情出來的數據類型就像一個數組,只需按結果= [{:a => 1,:b => 2,:c => 3}]來設置示例,則不能根據行設置你想要的[major_city] = result.a,是你的問題嗎?如果是這樣,則更改爲result.first.a。 – realwol 2014-09-23 15:53:37
所以我可以將查詢的結果設置爲一個數組,因爲它會返回像'@result = [紐約市,紐約]'',我會簡單地設置'@majoy_city = @result [0]'和@ major_state = @result [1]'? – Sauron 2014-09-23 16:01:29