Zum Inhalt springen

Oracle/SQL: einfache Where-Bedingung funzt nicht


beetFreeQ

Empfohlene Beiträge

Moin Ihr!

Ich habe eine Tabelle, aus der ich alle Datensätze auslesen möchte, deren Datum (in einem Feld gespeichert) zwischen zwei Zeitpunkten liegt und außerdem eine 0 im Feld "gesperrt" und keine 0 und kein O im Feld "Telnr" stehen hat... - soweit so gut - bis auf die letzten beiden Bedingungen geht's auch - aber die Ungleich-Bedingungen im Feld Telnr mag er nicht :( - genausowenig geht es, wenn ich in dem Feld "gesperrt" nach ungleich 1 abfragen würde... - er findet keine Datensätze, obwohl definitiv welche mit den Kriterien vorhanden sind...

Hier mal meine Query - vielleicht hab ich ja auch nur nen blöden Fehler drin...


SELECT BBNR,WVDATUM FROM STAMMDATEN

WHERE ((WVDATUM <= (SYSDATE + 0.01)) 

  AND (WVDATUM >= (SYSDATE - 0.01)) 

  AND (GESPERRT = 0) 

[color=red]  AND (TELNR <> 'O') 

  AND (TELNR <> '0')[/color])

ORDER BY WVDATUM

Die problematischen Bedingungen hab ich mal rot markiert...

Bin für jeden Tip dankbar...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich weiß zwar nicht, wie das Feld formatiert ist (ich denke mal als VarChar2), aber probier es einfach mal so!

SELECT BBNR,WVDATUM FROM STAMMDATEN

WHERE ((WVDATUM <= (SYSDATE + 0.01))

AND (WVDATUM >= (SYSDATE - 0.01))

AND (GESPERRT = 0)

AND NOT (TELNR = 'O')

AND NOT (TELNR = '0'))

ORDER BY WVDATUM;

Viel Spaß beim Testen!

CYA

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Beety,

Du solltest es nochmal mit dem LIKE Befehl versuchen, bzw. in Deinem Fall mit NOT (TELNR LIKE 'O')

Das funktioniert manchmal besser bei VarChar-Feldern.

Oder Du läßt mal die Hochkommata bei der 0 weg. Dann wandelt er nämlich die 0 die in einigen Feldern steht in NUMBER um und dann hast Du keine Probleme mit eventuellen Leerzeichen oder sowas davor. Bei LIKE sollte das aber auch schon nicht das Problem sein.

Greetz Dooley

Link zu diesem Kommentar
Auf anderen Seiten teilen

Originally posted by DooleyDoo

Hi Beety,

Du solltest es nochmal mit dem LIKE Befehl versuchen, bzw. in Deinem Fall mit NOT (TELNR LIKE 'O')

Das funktioniert manchmal besser bei VarChar-Feldern.

Oder Du läßt mal die Hochkommata bei der 0 weg. Dann wandelt er nämlich die 0 die in einigen Feldern steht in NUMBER um und dann hast Du keine Probleme mit eventuellen Leerzeichen oder sowas davor. Bei LIKE sollte das aber auch schon nicht das Problem sein.

Greetz Dooley

Thx... - aber das hat leider auch nicht geholfen... - ich versteh das langsam nicht mehr... - es kann doch nicht so schwer sein, alle Datensätze auszuschliessen, die ein O oder ne 0 im Feld stehen haben...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich hab mein Problem netterweise gelöst bekommen :)

Scheinbar benötigt Oracle erstmal ne Abfrage, ob das Feld "IS NULL" ist... - weiß nicht wieso, aber folgende Query funzt:


SELECT BBNR,WVDATUM FROM STAMMDATEN

WHERE ((WVDATUM <= (SYSDATE + 0.01))

  AND (WVDATUM >= (SYSDATE - 0.01)) 

  AND (GESPERRT = 0) 

  AND ((TELNR is null) 

    OR((TELNR <> ''0'') 

       AND(TELNR <> ''O'')))) 

ORDER BY WVDATUM

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