Zum Inhalt springen

Unterabfrage FROM nicht an erwarteter Stelle


zerberos

Empfohlene Beiträge

Hallo, ich habe eine Abfrage die so aussieht:


SELECT DISTINCT SPALTE1 "WERT1",SPALTE2 "WERT2",SPALTE3 "WERT3" FROM (SELECT ROWNUM,SPALTE1,SPALTE2,SPALTE3 FROM SYS_US.TABLEONE ORDER BY ROWNUM)

Bekomme dort den ORACLE Fehler:

ORA-00923: Schlüsselwort FROM nicht an erwarteter Stelle gefunden

Was mache ich falsch?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also prinzipiell heißt es ja

select spalte from tabelle [where bedingung]
in deinem fall heißt es aber
select spalte from (tabelle 1, tabelle 2, ...)
mE kann das so nicht funktionieren. besser wäre:
select spalte1 as wert1, spalte 2 as wert2, ... from tabelle1

bzw. wenn das über mehrere tabellen geht, dann mittels join.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

bin mir nicht ganz sicher, aber soweit ich weiß funktioniert distinct bei Oracle generell nicht über mehrere Spalten, lediglich Einzelspalten oder alle mit *. Teste mal ohne distinct das ganze, denn die Fehlermeldung besagt meiner meinung nach, dass die Syntax-Prüfung das From nach der Selektion erwartet.

wenn es dann geht, bau Dir ein subselect und wende das select distinct auf das subselect an.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

bin mir nicht ganz sicher, aber soweit ich weiß funktioniert distinct bei Oracle generell nicht über mehrere Spalten, lediglich Einzelspalten oder alle mit *. Teste mal ohne distinct das ganze, denn die Fehlermeldung besagt meiner meinung nach, dass die Syntax-Prüfung das From nach der Selektion erwartet.

wenn es dann geht, bau Dir ein subselect und wende das select distinct auf das subselect an.

Nein, sein SQL ist syntaktisch richtig (ob es auch fachlich stimmt, kann ich nicht sagen) :


SELECT   DISTINCT adress_id "WERT1", event_id "WERT2"

  FROM   (  SELECT   ROWNUM, adress_id, event_id

              FROM   app_adress

          ORDER BY   ROWNUM);


Row #	WERT1	WERT2  

-----	-----	-------

1    	88   	6053286

2    	89   	6053286

3    	90   	6053286

4    	91   	6053286



- Der SQL Fehler kann nicht von diesem SQL stammen, es muss vorher oder nachher noch etwas passieren (Vorausgesetzt, es existieren die Tabelle und Attribute so wie in seinem Beispiel.

@zerberus : Führe doch bitte mal nur das Subselect alleine aus und schaue, ob es funktioniert

gruss

Bearbeitet von dbwizard
Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...