Die Erste und Letzte Zeile Mit ROW_NUMBER und PARTITION

Probe-Eingang

Name | Value | Timestamp
----- | ------- | -----------------
One  | 1     | 2016-01-01 02:00
Two  | 3     | 2016-01-01 03:00
One  | 2     | 2016-01-02 02:00
Two  | 4     | 2016-01-03 04:00

Gewünschten Ausgang

Name | Value | EarliestTimestamp | LatestTimestamp
----- | ------- | ------------------- | -----------------
One  | 2     | 2016-01-01 02:00  | 2016-01-02 02:00
Two  | 4     | 2016-01-01 03:00  | 2016-01-03 04:00

Versucht-Abfrage

Ich versuche, mit ROW_NUMBER() und PARTITION BY erhalten Sie die neuesten Name und Value aber ich möchte auch den frühesten und den spätesten Timestamp Wert:

SELECT
    t.Name,
    t.Value,
    t.????????? AS EarliestTimestamp,
    t.Timestamp AS LatestTimestamp
FROM 
    (SELECT
        ROW_NUMBER() OVER (PARTITION BY Name ORDER BY TIMESTAMP DESC) AS RowNumber,
        Name,
        Value
        Timestamp) t
WHERE t.RowNumber = 1

InformationsquelleAutor Muhammad Rehan Saeed | 2016-07-21

Schreibe einen Kommentar