Wie kann ich die kombinieren/Zusammenführen von Spalten aus zwei SQL-Abfrage-Ergebnisse?

Habe ich eine Reihe von Daten in eine Tabelle mit dem Namen BWHourlyReadings zum Beispiel:

ServiceID      Hour   InputOctets    OutputOctets
=========      ====   ===========    =================
27222          1      383088         804249
27222          2      270529         688683
27222          3      247251         290124
... up to 24 hours of data
27222          24     236053         239165

28900          1      883011         914249
28900          3      444251         891124
... up to 24 hours of data
28900          24     123053         452165

Für jeden Tag gibt es bis zu 24 Messungen pro ServiceID.

Habe ich soweit zwei separate PIVOT Abfragen, eine für die InputOctets Spalte und eine für die OutputOctets Spalte (nur eine gezeigt, die hier aus Platzgründen):

-- Replace HourXIn with HourXOut for OutputOctets
SELECT ServiceID, [1] AS 'Hour1In', [2] AS 'Hour2In', [3] AS 'Hour3In', ...
FROM
(
    SELECT 
        ServiceID,
        Hour, 
        TotalInputOctets -- Other query has OutputOctets here instead
    FROM
        BWHourlyReadings

) AS bw
PIVOT 
( 
    MAX(TotalInputOctets)  -- Other query has OutputOctets here instead
    FOR [Hour] IN ([1], [2], [3], ... [24])
) AS pvt

Das gibt mir meine InputOctets und OutputOctets in zwei separate Ergebnis-sets, zum Beispiel:

Den PIVOT Abfrage-Ergebnis InputOctets:

ServiceID Hour1In Hour2In Hour3In . Hour24In     
========= ======= ======= =======   ========    
27222     383088  270529  247251    236053   
28900     883011  0       444251    123053   

Den PIVOT Abfrage-Ergebnis OutputOctets:

ServiceID Hour1Out Hour2Out Hour3Out .. Hour24Out    
========= ======== ======== ========    ========   
27222     804249   688683   290124      239165  
28900     914249   0        891124      452165

Ich brauche einen Bericht zu erstellen, wie diese:

ServiceID Hour1In Hour1Out Hour2In Hour2Out Hour3In Hour3Out .. Hour24In Hour24Out    
========= ======= ======== ======= ======== ======= ========    =======  ========   
27222     383088  804249   270529  688683   247251  290124      236053   239165  
28900     883011  914249   0       0        444251  891124      123053   452165

Wie kann ich die Zusammenführung der beiden query-Ergebnisse zu produzieren, die den Bericht oben?

Update:

Ich habe aktualisiert die Daten im gewünschten Berichtsformat entsprechen die Daten in der Quell-Tabelle-Beispiel. Ich entschuldige mich für die Verwirrung.

InformationsquelleAutor Kev | 2009-06-29
Schreibe einen Kommentar