2011-07-18 7 views
0

プロジェクトごとにデータベースがあります。現在、各インタビュアーを選択し、その結果を調査に追加してnum_completesを取得します。私はこれを複数のプロジェクトで行い、インタビューごとにnum_completesを追加する必要があります。ここに私のコードは、これまでのところです:2人のユニオンによるクエリでインタビュアーごとの補完数を追加する必要があります

SELECT interviewer AS INTERVIEWER, COUNT(completes) AS NUM_COMPLETES 
    FROM tableone_projectone, interviewertable_mainsystemdb 
    WHERE survey_result = '01' AND interviewertablekey=interviewernumber 
    GROUP BY survey_result, interviewer 
UNION ALL 
SELECT interviewer AS INTERVIEWER, COUNT(completes) AS NUM_COMPLETES 
    FROM tableone_projecttwo, interviewertable_mainsystemdb 
    WHERE survey_result = '01' AND interviewertablekey=interviewernumber 
    GROUP BY survey_result, interviewer 
    ORDER BY INTERVIEWER DESC 
    GO 

私はそれはあまり意味がありませんので、もし申し訳ありません、私のクエリをサニタイズする必要がありました。

ありがとうございます。

答えて

0

@Lucentフォックスは基本的に正しい答えを持っていますが、あなたもあなたを移動するために覚えておきたいの代わりに、 ORDER BY句をクエリの外部に追加します。これで完全な答えが得られます:

SELECT INTERVIEWER, Sum(NUM_COMPLETES) FROM (
    SELECT interviewer AS INTERVIEWER, COUNT(completes) AS NUM_COMPLETES 
     FROM tableone_projectone, interviewertable_mainsystemdb 
     WHERE survey_result = '01' AND interviewertablekey=interviewernumber 
     GROUP BY survey_result, interviewer 
    UNION ALL 
    SELECT interviewer AS INTERVIEWER, COUNT(completes) AS NUM_COMPLETES 
     FROM tableone_projecttwo, interviewertable_mainsystemdb 
     WHERE survey_result = '01' AND interviewertablekey=interviewernumber 
     GROUP BY survey_result, interviewer 
) AS unions 
GROUP BY INTERVIEWER 
ORDER BY INTERVIEWER DESC 
+0

訂正ありがとうございましたELi – Ryan

1

は、派生テーブルを使用します。

SELECT INTERVIEWER, Sum(NUM_COMPLETES) 
FROM (...) AS unions 
GROUP BY INTERVIEWER 

場所をあなたの労働組合のすべて...

+0

ありがとう、それは完璧に働いています。 – Ryan

関連する問題