次の列を持つテーブルがあります
End_date
.count_all_transactions
.count_timeouts
.request_key
.
percentagetimeout
ここで、2 つの異なる日付を計算し、それらを同時に表示する必要があります。クエリを作成しました。
私のクエリは次のとおりです。
Select PercentageTimeout ,
PerTimeout,
Transaction
From
(
select
T.COUNT_ALL_TRANSACTIONS as Total,
T.END_DATE as DT1,
T.COUNT_TIMEOUTS as Timeouts,
round (((T.COUNT_TIMEOUTS / T.COUNT_ALL_TRANSACTIONS) * 100)
,2) as PercentageTimeout,
R.INTERFACE_NAME as Transaction
from rpt_timeout T, dim_request R
where
T.REQUEST_KEY = R.REQUEST_KEY
AND
T.END_DATE='27 AUG 2012'
)
left outer join
(
select T1.COUNT_ALL_TRANSACTIONS as Total1,
T1.END_DATE as DT2,
T1.COUNT_TIMEOUTS as Timeouts1,
round (((T1.COUNT_TIMEOUTS / T1.COUNT_ALL_TRANSACTIONS) * 100)
,2) as PerTimeout,
R1.INTERFACE_NAME as Transaction1
from rpt_timeout T1, dim_request R1
where T1.REQUEST_KEY = R1.REQUEST_KEY
AND T1.END_DATE='20 AUG 2012'
) on Transaction = Transaction1;
このクエリは私に正しい結果を与えていますが、私が苦労しているのは、そのテーブルの対応する END_DATE として列の名前が必要なことです。つまり、私の出力は次のようになります
27-AUG-2012 20-AUG-2012 Transaction
0.28 0.1 Qpay
0.09 0.06 Payment