我對相對複雜的SQL相當陌生,可以對問題使用一些幫助。我有一個查詢:如何獲得記錄計數的總和(來自先前的查詢)
select
case
when group_id = 'ABC Acme' then 'ABC'
when group_id like 'Premium%' then 'PREM'
when group_id like '%Marvel%' then 'MRV'
else NULL
end client,
load_date, report_date, count(*) as record_count
from tablename
group by client, load_date, report_date
order by client, load_date;
返回以下內容:
client load_date report_date record_count
ABC 4/1/2016 2/28/2016 16108
PREM 4/19/2016 3/31/2017 5348
MRV 4/19/2016 3/31/2017 8335
我想,如果可能的話,得到的總和record_count(或29791)的。理想情況下,在上面的結果中添加另一行將會很好。我嘗試以下查詢,但沒有奏效...
select
case
when group_id = 'ABC Studios' then 'ABC'
when group_id like 'Premium%' then 'PREM'
when group_id like '%Marvel%' then 'MRV'
else NULL
end client,
load_date, report_date, count (*)
from tablename
group by client, load_date, report_date
union all
select 'SUM', count(*)
from tablename;
我得到以下錯誤:
An error occurred when executing the SQL command:
--get summary ttl of counts by load_date for each client
select
case wh...
[Amazon](500310) Invalid operation: each UNION query must have the same number of columns;
Execution time: 0s
1 statement failed.
的總記錄添加額外的列中的錯誤是顯而易見的。如果你想'UNION'兩個查詢都需要有相同數量的列。你應該在你的問題中包括什麼是你的預期結果,所以我們可以幫助你建立查詢。 –
你是對的@JuanCarlosOropeza。我確實得到了明確的答案,幫助我解決了這個問題。 THNXS用於跳躍和幫助,非常感謝! – Gar