共通テーブル式の一部である次のクエリがあります。私は "Select -1"ステートメントの機能を理解していません。これは、「EXISTS」ステートメントで使用される「Select 1」とは明らかに異なります。何か案は?「選択-1」とは何か、「選択1」とはどのように違うのですか?
select days_old,
count(express_cd),
count(*),
case
when round(count(express_cd)*100.0/count(*),2) < 1 then '0'
else ''
end ||
cast(decimal(round(count(express_cd)*100.0/count(*),2),5,2) as varchar(7)) ||
'%'
from foo.bar
group by days_old
union all
select -1, -- Selecting the -1 here
count(express_cd),
count(*),
case
when round(count(express_cd)*100.0/count(*),2) < 1 then '0'
else ''
end ||
cast(decimal(round(count(express_cd)*100.0/count(*),2),5,2) as varchar(7)) ||
'%'
from foo.bar
where days_old between 1 and 7
ここで特別なことは何も表示されません。おそらくこのクエリの作成者は最初の列の静的な値として '-1'を必要とします。 –
おそらく、それは 'days_old'がおそらく決して負にならないため、最初の選択の値と区別することが選択されました。しかし、他の人が言っているように、私たちができるのは推測です。 – Bridge
最後の7日間のサマリー行を作成するだけです。すべての日に専用レコード(最初の部分)と最後の7日間の要約(おそらく何らかのビジネス要件のため)があります。そして、はい、これは単なる野生の推測です。 – Pred