Ich versuche, PIVOT in Oracle zu verwenden, und ich bekomme ein seltsames Ergebnis. Es ist wahrscheinlich nur eine Option, die ich einstellen muss, aber was ich über Oracle/SQL weiß, könnte ich in dieses Kommentarfeld passen.Die Oracle Pivot-Abfrage enthält Spalten mit Anführungszeichen um die Spaltennamen. Was?
Hier ist ein Beispiel von meiner Anfrage:
with testdata as
(
select 'Fred' First_Name, 10 Items from dual
union
select 'John' First_Name, 5 Items from dual
union
select 'Jane' First_Name, 12 Items from dual
union
select 'Fred' First_Name, 15 Items from dual
)
select * from testdata
pivot (
sum(Items)
for First_Name
in ('Fred','John','Jane')
Die Ergebnisse kommen, wie ich mit Ausnahme der Spaltennamen erwartet haben einfache Anführungszeichen um sie (Bild von Toad - wenn ich die Zitate nach Excel exportieren, um Excel mitreißen):
Wie werde ich die einfacheren Anführungszeichen um die Spaltennamen wieder los? Ich versuchte, sie aus in der „in“ -Klausel zu nehmen und ich erhalte eine Fehlermeldung:
in (Fred,John,Jane)
Ich habe auch versucht die einfachen Anführungszeichen mit doppelten Anführungszeichen zu ersetzen und bekam den gleichen Fehler. Ich weiß nicht, ob dies eine Oracle-Option ist, die ich vor dem Ausführen meiner Abfrage oder einer Toad-Sache setzen/löschen muss.
Könnte eine Kröte Problem sein, anstatt eine SQL ein. – Mihai
Sie können Spaltenaliasnamen in Ihrem 'IN' angeben. Weitere Informationen finden Sie in der [oracle docs] (http://www.oracle.com/technetwork/articles/sql/11g-pivot-097235.html) – Taryn
My Duh. Ich habe die Oracle Pivot-Dokumentation zwei Tage lang gelesen und irgendwie habe ich das übersehen. Danke @bluefeet ... –