SQL ステートメントから必要な結果を取得する際に問題が発生しています。おそらく単純なものが欠けていることはわかっていますが、それを見ることができません。
これが私のテーブルです。
表: ユーザー (RoleID は Roles テーブルの ID にリンクされています) ID、 FirstName、 LastName、 RoleID 1、マット、ライアン、1 2、チッパー、ジョーンズ、1 3、フリオ、ジョーンズ、2 4、ジェイソン、ボーン、3 表: 役割 ID、 名前 1、現場担当者 2、技術 3、管理者 表: FRrequests (UserID は Users テーブルの ID にリンクされています) ID、 UserID、 Status 1、1、開く 2、1、提出済み 3、1、遅延 4、1、完了
私が欲しいのは、すべてのフィールド担当者のすべての「送信済み」および「遅延」リクエストの数を表示する SQL ステートメントです。以下は、望ましい結果の例です。
ネーム カウント チッパー・ジョーンズ 0 マット・ライアン 2
これが私がこれまでに持っている声明とそれが私に与える結果です。
SELECT Users.FirstName + ' ' + Users.LastName AS Name, COUNT(FRrequests.ID) AS 'Open Requests' FROM ユーザーの内部結合 ロール ON Users.RoleID = Roles.ID LEFT OUTER JOIN FRrequests ON Users.ID = FRrequests.UserID WHERE (Roles.Name = N'Field Rep') AND (FRrequests.Status = 'Submitted' OR FRrequests.Status = 'Delayed') GROUP BY Users.FirstName、Users.LastName ネーム カウント マット・ライアン 2
「AND (FRrequests.Status = 'Submitted' OR FRrequests.Status = 'Delayed')」の部分が壊れていることを知っています。ステートメントでそれなしで実行すると、すべてのユーザーが取得されますが、送信および遅延だけでなく、すべてのステータスがカウントされます。これを機能させるために何が欠けているのかわかりません。どんな助けでも大歓迎です。