1
私は、ジョブのリストがあるデータベースのセットアップを持っています。各ジョブは、1〜複数の場所にあります。ユーザーは、任意の場所でジョブを申請することができます。彼らは別の場所で同じ仕事に別々に応募することができます。各ジョブアプリケーションは、進行状況に応じて、1から新しく4までの4つのステータスを持ちます。SQL集計クエリ - カウントヌル
SQLクエリを実行して、すべてのジョブの概要、すべての場所、各ステータスごとに関連するアプリケーションの概要を表示する必要があります。したがって、たとえば
+ ---- + -------- + ------ + ----- +
| Job | Location | Status | Count |
+ ---- + -------- + ------ + ----- +
| 1000 | 1 | 1 | 7 |
| 1000 | 1 | 2 | 0 |
| 1000 | 1 | 3 | 1 |
| 1000 | 1 | 4 | 1 |
| 1000 | 2 | 1 | 4 |
| 1000 | 2 | 2 | 2 |
| 1000 | 2 | 3 | 0 |
| 1000 | 2 | 4 | 8 |
+ ---- + -------- + ------ + ----- +
さらに、4つのステータスカウントを合計して同じリストにまとめるのが理想的です。
これは私がこれまでに書いたSQL文です: - それは作品
SELECT B.JobID, B.LocationID, B.ApplicationStatusID, COUNT(B.JobID) AS CountOfResults
FROM Job AS A
JOIN JobApplication AS B ON A.JobID = B.JobID
LEFT JOIN JobApplicationStatus AS C ON B.ApplicationStatusID = C.JobApplicationStatusID
WHERE A.BrandID = 1
GROUP BY B.JobID, B.LocationID, B.ApplicationStatusID
、バー二つのことを: -
- 私は合計数を(取得する方法がわからないんですか私はカウントが0に
誰が助言でしたここでそれは結果を示していない
ありがとうございます!業務アプリケーションのステータステーブルでジョブの場所を想定すると、ジョブの表の例のデータに
を表示、ID番号5とアドレスのテーブルで6,7
Job
+ ------ + ---------- + ------------------- +
| Job ID | Job Title | Description |
+ ------ + ---------- + ------------------- +
| 1 | Developer | My Nice Description |
| 2 | Full Stack | Another Description |
+ ------ + ---------- + ------------------- +
Job Location
+ -- + ------ + ----------- +
| ID | Job ID | Location ID |
+ -- + ------ + ----------- +
| 1 | 1 | 5 |
| 2 | 1 | 6 |
| 3 | 2 | 5 |
| 4 | 2 | 6 |
| 5 | 2 | 7 |
+ -- + ------ + ----------- +
Job Application
+ -- + ------- + ------ + ----------- + --------------------- +
| ID | User ID | Job ID | Location ID | Application Status ID |
+ -- + ------- + ------ + ----------- + --------------------- +
| 1 | 1 | 1 | 5 | 1 |
| 2 | 1 | 1 | 6 | 2 |
| 3 | 2 | 1 | 5 | 1 |
| 4 | 2 | 2 | 7 | 4 |
+ -- + ------- + ------ + ----------- + --------------------- +
: - -
編集
ユーザー1は、場所5のジョブ1に適用され、アプリケーションのステータスは1です。
ユーザ1は、位置6でジョブ1のために適用され、そのアプリケーションのステータスが2
ユーザ2が位置5にジョブ1のために適用され、そのアプリケーションのステータスが1
ユーザ2でありますまた、場所7でジョブ2に適用され、そのアプリケーションの状態は、4
である私は、ここを探しています何、以下を返すために、クエリのようになります。 -
Result
+ --- + -------- + ------ + ----- +
| Job | Location | Status | Count |
+ --- + -------- + ------ + ----- +
| 1 | 5 | 1 | 2 |
| 1 | 5 | 2 | 0 |
| 1 | 5 | 3 | 0 |
| 1 | 5 | 4 | 0 |
| 1 | 6 | 1 | 0 |
| 1 | 6 | 2 | 1 |
| 1 | 6 | 3 | 0 |
| 1 | 6 | 4 | 0 |
+ --- + -------- + ------ + ----- +
このように0が表示されます。カウントは、そのステータス番号のジョブアプリケーションの数です。 4つのステータス番号があり、JobApplicationStatusという結合テーブルに設定されています。
で共通テーブル式と相関サブクエリを使用することにより、必要な合計金額を得ることができることを追加したいですか?また、期待される出力を表示してください。 –
上記の予想される出力を表示するように更新しました。 SQL Server 2014. –
ここで、合計を表示するかどうかはその列にする必要がありますか? –