SQL Problem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • SQL Problem

    Warum liefert diese Abfrage:

    PHP-Code:
    SELECT `ID`,`name`,`vornameFROM `kundenWHERE 
    ((name like '%melanie%') or (vorname like '%melanie%') ) and ((name <> '%grosch%') or (vorname <> '%grosch%') ) 
    trotzdem diesem Eintrag:

    ID name vorname
    ----------------------------------------
    xxx | Grosch | Melanie |
    ----------------------------------------

    Habe ich einen Denkfehler?

  • #2
    Wildcard % funktioniert nur im Zusammenhang mit LIKE und da '%grosch%' ungleich 'Grosch' ist, wird alles rechts vom AND wahr.

    Kommentar


    • #3
      Oh ja richtig also ein Denkfehler von mir danke! Das war verdammt schnell! Super!

      Kommentar


      • #4
        Mist zufrüh gefreut.

        Abfrage ist jetzt so:

        PHP-Code:
        SELECT `ID`,`name`,`vornameFROM `kundenWHERE
        ((name like '%melanie%') or (vorname like '%melanie%') ) and ((name <> 'Grosch') or (vorname <> 'Grosch') ) 
        TRotzdem finde ich noch

        Grosch Melanie

        Kommentar


        • #5
          Original geschrieben von Burnout
          PHP-Code:
          and ((name <> 'Grosch') or (vorname <> 'Grosch') ) 
          Der zweite Teil dieser Bedingung, dass der vorname nicht 'grosch' lauten soll, ist doch wunderbar erfüllt.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Das heißt bei ungleich den ganzen Ausdruck mit and verknüpfen?

            ja das funktioniert danke nochmal.
            Zuletzt geändert von Burnout; 25.07.2006, 14:46.

            Kommentar

            Lädt...
            X