1
異なる日付範囲に基づいてレポートを生成しようとしています。しかし、私が書いた質問は、すべての結果を1つにまとめることです。 4つの日付範囲で4つの結果が得られることを期待します。異なる日付範囲で別々の結果を返します
PS:私は初心者です。どんな助けもありがとう。
select
sum(case when IsBlank = 1 then 1 else 0 end) as BlankChats,
sum(case when LeadID > 0 then 1 else 0 end) as ConvertedChats,
sum(case when PickedUpBy != AssignedToAgent and AssignedToAgent > 0 and PickedUpBy > 0 then 1 else 0 end) as MissedChats,
sum(case when AssignedToAgent > 0 then 1 else 0 end) as AssignedChats,
sum(case when LeadType=1 then 1 else 0 end) as SalesLeads
from
chats with (nolock)
left join leads on leads.id=chats.leadid
where
(chats.createdon >= DATEADD(d,0,DATEDIFF(d,0,GETDATE())) and chats.createdOn <= DATEADD(MI, -1*30, GETDATE()))
OR
(chats.CreatedOn >= DATEADD(d, -1, DATEDIFF(d, 0, GETDATE())) and chats.createdOn <= DATEADD(MI, -1*30, DATEADD(d, -1, GETDATE())))
OR
(chats.CreatedOn >= DATEADD(d, -7, DATEDIFF(d, 0, GETDATE())) and chats.createdOn <= DATEADD(MI, -1*30, DATEADD(d, -7, GETDATE())))
OR
(chats.CreatedOn >= DATEADD(d, -8, DATEDIFF(d, 0, GETDATE())) and chats.createdOn <= DATEADD(MI, -1*30, DATEADD(d, -8, GETDATE())))
4つの結果セットが必要な場合は、4つのクエリを作成する必要があります。そしてあなたが学んでいるので、あなたはそれを使ってあなたのデータベースを捨てる習慣に入る前に、そのノーロックのヒントを取り除くことを検討するかもしれません。それは単に汚い読書よりはるかに不吉なことをします。 http://blogs.sqlsentry.com/aaronbertrand/bad-habits-nolock-everywhere/ –
クエリのサンプル結果と期待される結果を表示してください – TheGameiswar
データベースに日付テーブルを追加すると便利です。グループ化するには、そのテーブル内に列を含めることができます。 –