これは私の最初の投稿です。したがって、書式/内容に対する一般的な修正も歓迎します。私は比較的新しいSQLです。ある列の値の合計と別の列の相対的な出現をカウントするSQLクエリ
私は、分類評価からテスト結果を収集するデータベースを持っています。私は、それぞれのテストで期待される結果が何であるかを知っています。また、テストが成功したかどうか、つまり返される期待値が期待値と一致したかどうかを示す列もあります。
Expected_Result Result Success
A A True
A B False
B B True
A A True
B A False
私はSELECT Expected_Result, COUNT(Expected_Result) FROM Evaluation_Results GROUP BY Expected_Result
と各期待タイプの総出現を返すことができます知っている:それは次のようになります。 特定の予期される結果に対する誤検出の数をカウントする方法を知っていますSELECT COUNT(*) FROM Evaluation_Results WHERE Success = 'True' AND Expected_Result = 'A'
私は2つを組み合わせて苦労しています。テーブルあれば参加
Expected_Result Total Num_Successful Success_Rate
A 3 2 66.67
B 2 1 50.00
大文字小文字の区別がない大文字小文字の区別。 – jarlh
success_rateはすべての行に対して0として返されますか?また、なぜSuccessカラムがexpected_resultとすでに比較している場合にresultを使用するのですか? – Maps
答えとして受け入れましたが、合計で 'result = evaluation_result'句を削除し、%success rateの除算の前に100.0を掛けました。おそらくあなたはあなたの答えを編集する必要があります。ありがとうございました。 – Maps