prog:sql_oracle_unpivot
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende Überarbeitung | |||
prog:sql_oracle_unpivot [2019/05/17 18:48] – [SQL UNPivot Funktion] gpipperr | prog:sql_oracle_unpivot [2019/05/17 18:49] (aktuell) – [Quellen] gpipperr | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ===== SQL UNPivot Funktion ===== | ||
+ | |||
+ | ** ab 11g ** | ||
+ | |||
+ | **Aufgabe** | ||
+ | |||
+ | Eine Tabelle enthält 3 Felder für bestimmte Eigenschaften, | ||
+ | |||
+ | |||
+ | Beispiel: | ||
+ | |||
+ | <code sql> | ||
+ | |||
+ | SELECT API_KEY, | ||
+ | |||
+ | ABC 10.10% | ||
+ | XCY 10.11% | ||
+ | |||
+ | </ | ||
+ | |||
+ | -- Die Anzeige soll nun aber lauten: | ||
+ | <code sql> | ||
+ | |||
+ | |||
+ | ABC 10.10% | ||
+ | ABC 192.% | ||
+ | ABC 178.% | ||
+ | |||
+ | ... | ||
+ | |||
+ | </ | ||
+ | |||
+ | |||
+ | **Lösung**: | ||
+ | |||
+ | <code sql> | ||
+ | |||
+ | SELECT API_KEY | ||
+ | , IP | ||
+ | , IP_ADRESSPOS | ||
+ | FROM | ||
+ | UNPIVOT (IP FOR IP_ADRESSPOS IN (IP_ADRESS1 AS ' | ||
+ | |||
+ | APY_KEY | ||
+ | ------ | ||
+ | ABC 10.10% | ||
+ | ABC 192.% 2 | ||
+ | ABC 178.% 3 | ||
+ | ... | ||
+ | |||
+ | </ | ||
+ | |||
+ | Der Trick ist nun in der UNPIVOT Klausel die Spalten aufzulösen, | ||
+ | |||
+ | |||
+ | Für die andere Richtung siehe auch [[prog: | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ==== Quellen ==== | ||
+ | |||
+ | |||
+ | Siehe unpivot_clause in https:// | ||
prog/sql_oracle_unpivot.txt · Zuletzt geändert: 2019/05/17 18:49 von gpipperr