Pit Stop: SQL-Abfrage Problem

Hi zusammen,
kurze Frage:
ich habe eine Datenbank, aus der ich bestimmte cd-Kritiken auslesen will.
Meine Abfrage lautet bspw.
SELECT band,title FROM cd_reviewsWHEREband = '4LYN'
band ist varchar 255 und latin1_swedish_ci.

MySQL liefert mir bei allen WHERE-Abfragen ein leeres Resultat zurück.
Die daten stehen allerdings definitv in der DB.

Wie kommt das ?
Habe ich ein Brett vorm Kopf???

danke, gruß Pit

  1. yo,

    SELECT band,title FROM cd_reviewsWHEREband = '4LYN'

    eine sehr einfache abfrage. es gibt dabei aber immer mehrere kriterien zu beachten, falls die where klausel nicht stimmt oder erst gar keine ergebnise liefert.

    zum einen ist zu klären, ob gross und kleinschreibeung beachtet wird. den kann man schnell mit der funktion UPPER auf beiden seiten entgegen wirken.

    auf der anderen seite können es verstecke sonderzeichen sein, welche die WHERE klausel dazu veranlassen, nicht zu matchen. STRLEN() hilft da oft weiter

    die dritte problematik ensteht dadurch, dass die abfrage nicht direkt an dem dbms abgegeben wurde, sondern über ein programm, zum beispiel in PHP eingebettet ist.

    Ilja

    1. da waren wirklich leerzeichen zwischendurch am Anfang...
      meine Import-Funktion war wohl partiell ungenau...
      danke, pit

  2. Moin

    Steht der gesuchte String: "4LYN" wirklich so alleine im Feld Band oder ist das Bestandteil eines gesuchten Wertes?

    Bei deiner Abfrage werden Datensatze gefunden, die genau "4LYN" im Feld Band stehen haben.

    Gruß Bobby

    --
    -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
    -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
    ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)