2016-03-29 11 views
0

ich aus der geschachtelten Tabelle wählen versucht, aber eine Fehlermeldung angezeigt „ORA-00933: SQL-Befehl nicht richtig beendet“ Dies ist der Wunsch von selecttionSQL: aus verschachtelter Tabelle wählt oid

select b.NomPlayer from table (select t.players from Team t where t.IdTeam=1) as p; 

Und das der Code Hexe habe ich die player_type und team_type

CREATE OR REPLACE TYPE Player_Type AS OBJECT (Num_Licence NUMBER, NomPlayer VARCHAR2(30)) ; 
CREATE TYPE PlayersNT AS TABLE OF ref Player_Type ; 
CREATE TYPE Team_Type AS OBJECT (IdTeam NUMBER, TeamName VARCHAR2(30), Players PlayersNT) ; 
CREATE TABLE Player OF Player_Type ; 
CREATE TABLE Team OF Team_Type 
NESTED TABLE Players STORE AS PlayersTab ; 

Antwort

0

die AS in der FROM Klausel entfernen. Im Gegensatz zu anderen Datenbanken erlaubt Oracle nur AS in der SELECT Klausel.

select * from table(select t.players from Team t where t.IdTeam=1) p; 
+0

habe ich versucht, dieses aber eine Fehlermeldung angezeigt ORA-00932: inkonsistente Datentypen: erwartete ZAHL REF SYSTEM.TEAM_TYPE – kulercan

+0

Können Sie einige Beispieldaten fügen Sie den neuen Fehler zu reproduzieren? Wenn ich die DDL ausführe und die leeren Tabellen abfrage, funktioniert es für mich. –

+0

Ich füge die oids von Spieler in der geschachtelten Tabelle hinzu – kulercan

Verwandte Themen