Zum Inhalt springen

subselect soll ergebnis liefern


hammerle

Empfohlene Beiträge

Hi,

Ich bin noch Anfänger und habe ein Problem mit Subselect die kein Ergebnis liefert und mir daraufhin der select oben überhaupt nichts mehr anzeigt in der Zeile.

Ich setzte einfach veg auf den Wert 22 doch wenn das Subselect unten kein Ergebnis liefert verschwindet auch die Anzeige 22 unter veg.

Weiss vielleicht jemand wie man so etwas abfangen kann?

select 22 as veg

from

(select wabe

from t154wast

where jahr = &jahr and stufe = ' ' and wabe = '02' and (hwgr='08')

) a22

Link zu diesem Kommentar
Auf anderen Seiten teilen

Nenne bitte immer das DBMS dazu!

Aus Deinem anderen Posting lässt sich auf "Oracle" schließen.

Ich bitte Dich diesen Absatz einmal zu lesen und zu überlegen, ob man Dein Post verstehen kann Wie man Fragen richtig stellt: eine Anleitung wie man Fragen erfolgreich in Usenet, Mailing Listen und Webforen stellt.

Ich verstehe es nämlich nicht

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das kommt davon wenn man mit dem Kopf woanders ist ;)

Dies ist ein neuer Thread und an Oracle hatte ich nicht mehr gedacht. :floet:

Ja, es geht um Oracle und PL/SQL.

Das Problem ist halt nicht so einfach zu beschreiben und darum hatte ich halt das kleine Beispielscript gepostet.

Wenn man mit vielen Subselects arbeitet um daraus eine ganze Reihe von Berechnungen zu machen müssen alle Subselects auch Wert liefern.

Wenn auch nur einer der Subselects keinen Datensatz finden kann blendet PL/SQL die komplette Zeile der Berechnung im select aus.

Auch wenn Teilberechnungen und andere Subselects durchaus Werte liefern und er diese anzeigen könnte.

In meinem Fall war es so, dass im Jahr 2008 keine Werte zu holen waren aber durchaus für 2009, da wir im Juli 2009 mit der Datenaufnahme begonnen hatten.

Als ich das Script laufen ließ wunderte ich mich warum er überhaupt nichts angezeigt hat.

Für 2008 war es mir ja klar aber wo sind die Daten von 2009 hin?

Man muß die Subselects in der where Abfrage verknüpfen, damit auch alle Daten angezeigt werden.

z.B where a.var = b.var(+)

Das (+) sorgt dafür, dass auch die Zeilen angezeigt werden, die keine Werte geliefert haben und die anderen Werte aus 2009 plötzlich "auftauchen".

Das Problem ist gelöst. :D

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das kommt davon wenn man mit dem Kopf woanders ist ;)

Dies ist ein neuer Thread und an Oracle hatte ich nicht mehr gedacht. :floet:

Ja, es geht um Oracle und PL/SQL.

Ich würde Dich bitten immer alle Informationen in Deine Postings zu schreiben, denn niemand wird sich die Mühe mache alle Deine Postings zu lesen und sich die Informationen, die man benötigt um zu helfen, selbst zusammen zu suchen.

Außerdem, wie schon gesagt, beschreibe Dein Problem so, dass man es mit lesen des Postings versteht

Das Problem ist gelöst. :D

In diesem Fall hilft immer eine gute Erläuterung und ggf ein kleines Beispiel, damit auch andere etwas von Deiner Lösung haben

Danke

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...