1

例の表:

(列見出し) 全員の合計インタビュー --- (行見出し) インタビュー依頼済み

(列見出し) 今週の面接数 -- (行の値) 今週予定されている、ステータスが「面接要求済み」のすべての日付をカウントします。例: 4

(列見出し) 来週の面接数 -- (行の値) 次の週に予定されている、ステータスが「面接要求済み」のすべての日付をカウントします。例: 6

まず第一に、私はその場しのぎのテーブルについて謝罪したいと思います。私は新しいメンバーなので、写真を使用できないようです.

私は reportbuilder と sql を使用するのも初めてで、レポート内の特定の日付範囲に含まれる日付の数をカウントする方法を見つけようとしています。

「今週のインタビュー数」というその場しのぎのフィールドで述べたように、日付フィールドに基づいて、今週、翌週、前週などに予定されているすべての日付をカウントしたいと考えています。次に、このテーブルを分割して、1 人の人物がスケジュールしたすべてのインタビューを表示する予定です。

私が抱えている問題は、異なる月/日にまたがる多くの日付があることです。テーブルは現在のインタビューのライブ表現であるため、DateDiff または他の日付機能でこれをどのように表現できるかわかりません。

レポートビルダーを使用して、私がやろうとしていることは可能ですか?? もしそうなら、私の質問を見てくれてありがとう。

要求されたデータセット フィールド:

[UserName] (ユーザー テーブル)、[InterviewStatus] (インタビュー テーブル)、[DateUpdated] (インタビュー テーブル)

これらは、レポートで使用される主なものです

4

2 に答える 2

1

各フィールドの列数をカウントするだけの場合は、SQLステートメントを使用できます(COUNT()COUNT()を参照) 。

次のような一般的なクエリを実行できます。

SELECT COUNT(fieldName1), COUNT(fieldName2), ... , COUNT(fieldNamen) FROM <tableName>

また、質問がより明確になるように、コードを表示するようにしてください。

于 2013-01-24T12:25:55.807 に答える
0

現在の週の初めから次の週の終わりまでの日付の where 句で、インタビュー テーブルのフィルタリングから一般的な select ステートメントを使用できます。

日付が現在の週または次の週に該当する場合、2 つのフィールドの合計は 1 になります。

編集: 以下の例は、今週の日付の数を示します。別の質問から取得:

Select InterviewStatus,
       Sum(Case when DateUpdated >= DATEADD(dd, -(DATEPART(dw, GETDATE()) -1), GETDATE())
                     AND DateUpdated < CAST(CONVERT(VARCHAR(10), DATEADD(dd, (8 - DATEPART(dw, GETDATE())), GETDATE()), 120) AS DATETIME)
                Then 1
                Else 0 end) 
          as NumberInCurrentWeek
From InterviewTable
Where DateUpdated >= DATEADD(dd, -(DATEPART(dw, GETDATE()) -1), GETDATE())
      AND DateUpdated < CAST(CONVERT(VARCHAR(10), DATEADD(dd, (8 - DATEPART(dw, GETDATE())), GETDATE()), 120) AS DATETIME)
Group by InterviewStatus

これは、正確な状況に合わせて微調整する必要があります。たとえば、8 x 7 を変更すると、現在の 2 週間がキャプチャされます。

次に、クエリに基づいて簡単なテーブルを作成します。

于 2013-01-25T11:28:43.863 に答える