このテーブルをクエリする時間は約 8 ~ 12 分であり、2 回クエリを実行すると長すぎるため、テーブルを 1 回クエリしたいと考えています。表には、内部と外部の結果を識別するためのフラグがあります。このフラグが内部である列AとBの合計の合計と、このフラグが外部である列BとCとDの合計が必要です..現在、2つの別々のクエリが結合されています...
これは最初のクエリの例です
Select
CONVERT(varchar(10), right([week_name],10), 111) as DatePeriod --weekly
,[Group] as [Group]
,SUM([columnA]) as [columnA_int]
,SUM([columnB]) as [columnB_int]
from myTbl
where internal_external = 'internal'
group by
CONVERT(varchar(10), right([week_name],10), 111),[Group]
2 番目のクエリ
Select
CONVERT(varchar(10), right([week_name],10), 111) as DatePeriod --weekly
,[Group] as [Group]
,SUM([columnB]) as [columnB_ext]
,SUM([columnC]) as [columnC_ext]
,SUM([columnC]) as [columnC_ext]
from myTbl
where internal_external = 'external'
group by
CONVERT(varchar(10), right([week_name],10), 111),[Group]
したがって、理想的には、5 つの列すべてに対して 1 つのクエリを実行し、DB を 1 回だけヒットします。