2017-07-06 22 views
0

だから、これは私が満たすために必要な要件です: MSSQL、SQLビューを選択し、割合クエリ

SchoolDistrict.SchoolDistrictID

によってグループ化されたESDの学校の 集約されたデータは、 (上の学区のシナリオと同じデータを取得し、地区別にグループを追加し、フィルタリングして

EducationServiceDistrict EducationServiceDistrictID

) また、パスの割合を計算し、失敗し、テストされていない

にはどうすれば合格率を計算しない、失敗し、テストされていませんか? これまでに書いた質問です。

CREATE VIEW district_map AS 
SELECT * and SchoolDistrictID, 
     EducationServiceDistrict 
    FROM SchoolDistrict_View 
     and SchoolDistrict, 
     EducationServiceDistrict 
    GROUP BY EducationServiceDistrict.EducationServiceDistrictID 
    ORDER BYLeadWaterTestLocation.PassFail 
+1

あなたのSQL文は無効です(構文エラーがあります)ので、何もできません。パーセンテージは、グレードの合計数、失敗した人数、成功しなかった人数、またはテストされていない人数を使用して、他の場所と同じ方法で計算します。また、SQLタグを追加すると、使用する特定のDBMSのタグを追加することを提案する大きな赤いボックスが表示されました。機能と構文が大きく異なるためです。その提案を無視することによって、応答の前にユーザーが追加するのを待っている間に、遅延を追加するだけで役立ちます。 –

答えて

0

これは、これらの問題が解決されるかの一般的な考えである - あなたは、この簡易版を理解すれば、あなたの問題を解決することができるようになります。

select d.districtName, 
    s.studentCount, 
    case when s.studentCount=0 then 0 else s.passed/s.studentCount * 100 end as PassedPct 
    from district d 
    join (select districtId, 
      sum(studentCount) as studentCount, 
      sum(passed) as passed 
      from schools 
      group by districtId) as s 
    on d.districtId = s.districtId 
    order by d.districtName