2011-12-03 6 views
0

背景:SQLクエリ

ネットプロモータースコアは、顧客の目を通して、企業のパフォーマンスを測定する方法です。アイデアは、顧客が0〜10のスケールで、「友人や同僚にXをどの程度推奨するのですか?」という形式で質問に答えることです。答えは3つのカテゴリーに分類されます:脱力者(0-6)、受身(7-8)、プロモーター(9-10)。 NPSは、-100〜100の間で変えることができ、このように計算されます。

NPS = (% of promoters) - (% of detractors) 

(出典:http://www.netpromoter.com/np/calculate.jsp

問題:

は、私は、時間をかけてNPSをプロットする必要があり、理想的には、これが普通のSQLによって達成可能な場合です。今、私はこだわっていて、これについて助けが必要です。

すべての結合やその他の関連する人口統計データを次のように省略しましょう。私は正確な答えを追跡する必要があるだろうと思い、それでは、私はこのフォームの応答を格納仮定せてはいけない:

answer  date 
0   2011-11-28 
1   2011-11-30 
2   2011-12-02 

0 = detractor、1 =パッシブおよび2 =プロモーター。

この情報から、NPS値を経時的に視覚化したいと思います。どのように私はそのような(私)のSQLクエリを設計することができますか?

答えて

0

そのテーブルを持つことは、このような単一のクエリでそれを取得することが可能です:

SELECT date, SUM(answer-1) * 100/COUNT(answer) as NPS 
FROM yourTable 
GROUP BY date 
+0

良いものだ、それはこのようにそれを保存するに問題を軽減するために役立った、どうもありがとう! – Calle