Leere bzw. mit bestimmten Werte gefüllte Felder in einem SELECT ausschliessen

  • VB.NET
  • .NET (FX) 3.0–3.5

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von Manü.

    Leere bzw. mit bestimmten Werte gefüllte Felder in einem SELECT ausschliessen

    Hey Leute,

    ich stell mich gerade zu Glatt an und wundere mich, das mir das Query

    SQL-Abfrage

    1. SELECT * from `3040_info` WHERE Messdatum != "" OR Messdatum != "UNDEF" AND Rauheitsdatum != "" OR Rauheitsdatum != "UNDEF";

    dennoch Zeilen ausgibt, wo es leere bzw. mit UNDEF gefüllte Felder gibt.

    Brainfuck-Quellcode

    1. mysql> SELECT * from `3040_info` WHERE Messdatum != "" OR Messdatum != "UNDEF" AND Rauheitsdatum != "" OR Rauheitsdatum != "UNDEF" limit 3;
    2. +----+-------------+-----------+-------------+-----------+------------------------------------------------+---------------+
    3. | ID | TXLCode | geliefert | Lieferdatum | Lieferbox | Messdatum | Rauheitsdatum |
    4. +----+-------------+-----------+-------------+-----------+------------------------------------------------+---------------+
    5. | 1 | GW100990000 | NULL | NULL | NULL | Vorabeintrag Messmaske3040 27.05.2014 08:45:47 | UNDEF |
    6. | 2 | GW101020036 | NULL | NULL | NULL | importiert am 08.04.2014 09:39:44 | |
    7. | 3 | GW101020043 | NULL | NULL | NULL | importiert am 08.04.2014 09:39:02 | |
    8. +----+-------------+-----------+-------------+-----------+------------------------------------------------+---------------+
    9. 3 rows in set (0.00 sec)


    Habe ich das in den WHERE-Klauseln nicht explizt ausgeschlossen?

    Nachtrag:
    Ok ... anstatt den OR-Verknüpfungen sollte es AND heissen.

    SQL-Abfrage

    1. SELECT * from `3040_info` WHERE Messdatum != "" AND Messdatum != "UNDEF" AND Rauheitsdatum != "" AND Rauheitsdatum != "UNDEF" limit 3;

    Dann werden auch nur die gewünschten Zeilen ausgegeben.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „hirnwunde“ ()

    Ahoi,

    denk doch nochmal über die logischen Operatoren nach ... und versuch es mal mit AND :)

    Man kann es in vielen Fällen auch etwas anders ausdrücken:
    OR -> KANN-Bestimmung
    AND -> MUSS-Bestimmung

    Grüße Manu

    Was Gott dem Menschen erspart hat, kann der Computer.
    Billy ©, (*1932), Schweizer Aphoristiker
    Quelle: www.Aphorismen.de