Pivot und Unpivot einer Tabelle mit mehreren Spalten und Zeilen in SQL

Lochana

Ich muss diese folgende Tabelle wie folgt ausgeben. Unten finden Sie eine vorhandene Datenbanktabellenausgabe.

UNIQUE_ID   PARTICULARS                   18-Jan    18-Feb    18-Mar
-----       -----                         -----     -----     -----
1           Direct Cost                   3,393     3,776     3,776
1           Quarter                       Q3 FY18   Q3 FY18   Q3 FY18
1           Revenue net Volume Discount   4,409     5,787     5,512
2           Direct Cost                   25,022    39,178    34,143
2           Quarter                       Q2 FY18   Q2 FY18   Q2 FY18
2           Revenue net Volume Discount   28,730    45,507    38,247

Ich muss die obige Tabelle in die folgende Ausgabe konvertieren.

UNIQUE_ID   FinancialMonth  Quarter     DirectCost  Revenue net Volume Discount
1           18-Jan          Q3 FY18     3,393       4,409
1           18-Feb          Q3 FY18     3,776       5,787
1           18-Mar          Q3 FY18     3,776       5,512
2           18-Jan          Q2 FY18     25,022      28,730
2           18-Feb          Q2 FY18     39,178      45,507
2           18-Mar          Q2 FY18     34,143      38,247

Könnten Sie mir dabei helfen, es zu konvertieren? Ich habe FinancialMonth mit Unpivot konvertiert , konnte jedoch Quarter nicht als Spalte konvertieren .

SELECT UNIQUE_ID
       ,PARTICULARS
       ,[FinancialYearMonth] AS 'FinancialMonth'
       ,CASE WHEN PARTICULARS='Direct Cost'   
             THEN [FinancialValues] END AS [DirectCost]
       ,CASE WHEN PARTICULARS='Revenue net Volume Discount'   
             THEN [FinancialValues] END AS [RevenueNetVolumeDiscount]

FROM DBO.Raw_Monthly
UNPIVOT   
  ( 
        FinancialValues
    FOR [FinancialYearMonth] IN(
       Jan18
      ,[Feb18]
      ,[Mar18]


       ) 
   ) AS unpv 

In der obigen Abfrage fehlen Viertelwerte.

Sowohl FinancialMonth als auch Quarter könnten gleichzeitig mit meinem Verständnis un- und schwenkbar sein. Könnten Sie bitte dabei helfen?

Barbaros Ozhan

Die versuchte Abfrage fehlt danach pivoting( bedingte Aggregation, z. B. case..whenKlauseln, die Aggregation durch Gruppierung enthalten ) unpivoting. Beachten Sie daher:

 SELECT [Unique_ID], [FinancialMonth], 
        MAX(CASE WHEN [Particulars]='Quarter' THEN [FinancialValues] END) AS [Quarter],
        MAX(CASE WHEN [Particulars]='Direct Cost' THEN [FinancialValues] END) AS [DirectCost],
        MAX(CASE WHEN [Particulars]='Revenue net Volume Discount' THEN [FinancialValues] 
        END) AS [Revenue net Volume Discount]
   FROM Raw_Monthly
UNPIVOT  
   (
    [FinancialValues] FOR [FinancialMonth] IN ( [18-Jan] ,[18-Feb] ,[18-Mar] ) 
   ) AS unpvt
  GROUP BY [Unique_ID], [FinancialMonth]
  ORDER BY [Unique_ID], 
           CONVERT(date, REVERSE(SUBSTRING(REVERSE([FinancialMonth]),1,3))+
                  ' 20'+  SUBSTRING(REPLACE([FinancialMonth],'-',''),1,2) , 13)

Demo

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

SQL Server PIVOT mit mehreren aggregierten Spalten und Summenspalten

Pivot-Tabelle mit mehreren Spalten in SQL?

Pivot und Unpivot in SQL mit zwei Tabellen (Transponieren von Werten als Spaltenüberschriften)

Pivot-Zeilen in Spalten und Spalten in Zeilen in SQL Server

Pivot und Summe mit mehreren Spalten

PyQT5 und Filtern einer Tabelle mit mehreren Spalten

Erstellen einer Pivot-Tabelle mit mehreren Spalten in R.

Schwenken einer Tabelle mit mehreren Spalten in SQL

Berechnen einer Funktion und Vergleichen einer Spalte mit mehreren Spalten in einer Tabelle

SQL Vergleichen Sie Zeilen einer Tabelle mit mehreren Spalten

Median aus mehreren Zeilen und Spalten in einer Datentabelle mit Gruppierung

Holen Sie sich eine Tabelle mit einer Zeile pro ID und mehreren Spalten aus einer Tabelle mit mehreren Zeilen für dieselbe ID und berechnen Sie die Summe basierend auf der Bedingung

Wie extrahiere ich mehrere Zeilen aus einer Tabelle basierend auf Werten aus mehreren Spalten aus einer anderen Tabelle und verkette sie dann in SQL?

Crosstable mit mehreren Elementen in Zeilen und Spalten

SQL-Abfrage mit mehreren CSV-Spalten und Zeilen

PIVOT und dupliziere einige Spalten einer Tabelle

SQL Server 2012 Dynamische Pivot-Tabelle mit mehreren Unterabfragen und Zeilen-'Headern' - ist dies möglich?

Pivot-Tabelle in mehrere Spalten und mehrere Zeilen

Pivot-Tabelle mit mehreren Spalten erstellen und nach eindeutigen Vorkommen aggregieren

SQL-Abfrage: So überprüfen Sie die Existenz von *mehreren* Zeilen und Spalten mit einer Abfrage

Postgres - Generieren Sie dynamisch mehrere Zeilen und Spalten und verbinden Sie sie mit einer vorhandenen Tabelle

Zeigen Sie eine Tabelle mit der Maus für Elemente in mehreren Zeilen und Spalten an

Der Weg zum Einfügen und Füllen von Tabellenbasis auf Spalte in einer anderen Tabelle in SQL mit mehreren Millionen Zeilen

Pivot-Tabelle in SQL mit mehreren Spalten

Tabelle mit Werten aus einer anderen Tabelle auf der Grundlage von Zeilen und Spalten auffüllen

Erstellen Sie eine Tabelle in Latex mit mehreren Zeilen und mehreren Spalten

Unpivot und Pivot mit in der SQL Server-Tabelle

SQL - Unpivot/Pivot von Zeilen in Spalten

SQL - Unpivot/Pivot von Zeilen in Spalten

TOP Liste

  1. 1

    So legen Sie mit dem Interface Builder unterschiedliche führende Speicherplätze für unterschiedliche Geräte fest

  2. 2

    Fügen Sie eine weitere Schaltfläche zu gwt Suggest Box hinzu

  3. 3

    Wie konvertiere ich einen Vektor von Bytes (u8) in eine Zeichenfolge?

  4. 4

    Wie kann ich in SCSS mehrere Klassen zu einer einzigen kombinieren?

  5. 5

    Wie konvertiert man einen Datenrahmen im langen Format in eine Liste mit einem geeigneten Format?

  6. 6

    Speichern Sie ein MPAndroidChart-Diagramm in einem Bild, ohne es in einer Aktivität anzuzeigen

  7. 7

    Gruppieren Sie Datenrahmenspalten nach ihrem Datum (die Spaltentitel enthalten) und fassen Sie die Instanzen von Einsen und Nullen in R . zusammen

  8. 8

    Tomcat - Leiten Sie den alten Kontextstamm zum neuen Kontextstamm um

  9. 9

    Eclipse Oxygen - Projekte verschwinden

  10. 10

    Wie wählt man Unterschiede mit drei Tabellen aus?

  11. 11

    Tic Tac Toe-Spiel im React-Reset-Button funktioniert nicht

  12. 12

    So berechnen Sie die Verfügbarkeit von Anwendungen (SLA)

  13. 13

    ElasticSearch BulkShardRequest ist aufgrund von org.elasticsearch.common.util.concurrent.EsThreadPoolExecutor fehlgeschlagen

  14. 14

    Wie kann ich den Kaskadenmodus global einstellen?

  15. 15

    Python: Spalten mit demselben Namen zusammenführen, wobei der Mindestwert beibehalten wird

  16. 16

    So erhalten Sie eine gleichmäßige Höhe für alle Eingabefelder

  17. 17

    Wie erstelle ich einen neuen übergeordneten Knoten außerhalb der .ref (/ path) in der Firebase-Echtzeitdatenbank mithilfe von Cloud-Funktionen (Typescript)?

  18. 18

    Was ist schneller: SUM über NULL oder über 0?

  19. 19

    Wie kann ich eine verschachtelte Schleife mit lapply in R ersetzen?

  20. 20

    Kann ich ein Tkinter-Canvas erstellen, das mehrere Zeilen in einem Text-Widget umfasst?

  21. 21

    Ärgerliches Problem mit yaml, das ich nicht lösen kann

heißlabel

Archiv