我正在調查數據,其中每個調查都有1或2行數據,每行都有一個分數,第1行有關鍵字。我需要彙總第1行包含特定關鍵字的所有調查分數。如何在一行中包含匹配關鍵字的所有相關行中使用SQL進行SUM
我試圖找到一個非Interative的方式總結爲多行分數爲包含特定關鍵字
SURVEYGUID ANSWER_NUMBER SCORE KEYWORDS
FOO 1 3 MILK EGGS JUICE
FOO 2 10
WIZ 1 1 TOAST
WIZ 2 5
BAR 1 5 MILK TOAST
BAR 2 2
僞代碼每個獨特的調查,很容易:
CALC_SCORE (txt) =
Find all SURVEYGUIDs where Keywords contains 'txt'
Then SUM all Scores for that list of SURVEYGUIDS
CALC_SCORE(MILK)將找到的調查foo和bar,然後SUM(3 + 10)+(5 + 2)
CALC_SCORE(TOAST)將找到WIZ和BAR,然後SUM(1 + 5)+(5 +2)
是否有某種連接或數據透視允許我在單個或兩個SQL查詢中執行此操作?
(我的項目是軌道/ ActiveRecord的FWIW)
謝謝!我正試圖將其轉換爲activerecord來測試它! – jpwynn 2012-02-05 07:25:56