Rud: Datenbank-Abfrage

Hi,
ich hab (wieder mal) ein Problem mit einer mySQL-Abfrage:
Hier ist sie:

$abfr = "SELECT * FROM archiv LIMIT ".$start.", ".$eintraege_pro_seite." WHERE substring(plz,1,1)='".$indp."' AND frei=1 AND land='D'"
$result = mysql_query($abfr);
$daten = mysql_fetch_array($result);

.. und als mysql_error bring der: "Fehler in der SQL-Syntax. bei 'WHERE (substring(plz,1,1)='0' AND frei=1 AND land"

1. ich denke eigentlich alles richtig gemacht zu haben :-(
2. wieso bricht die Ausgabe des Fehlers ab - Hat so ein Query-String eine Maximallänge ???

  1. Hallo,
    WHERE vor LIMIT

    Also erst die WHERE Kriterien dann ORDER BY und dann LIMIT

    MFG
    Andavos

    1. Ich möchte mich bedanken.

      1. Hello,

        Ich möchte mich bedanken.

        Dann tus doch ;-)

        Harzliche Grüße aus http://www.annerschbarrich.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        Nur selber lernen macht schlau
    2. Hallo,
      noch ne kleine Ergänzung, aber vorhin war der Absende-Button schneller ^^

      Also eine SQL Abfrage sieht so aus:
      SELECT * FROM, dann JOIN, dann WHERE-Kriterien, dann ORDER BY und dann LIMIT

      Bsp:
      SELECT * FROM tabelle INNER JOIN verweis WHERE username LIKE '%beispiel%' AND aktiv = '1' ORDER BY id DESC LIMIT $start,$anzahl

      Das 'INNER JOIN verweis' benutzt man eher selten, zumindest kann man auch alles ohne die Anweisung programmieren ;)

      MFG
      Andavos

      1. Hallo Andavos

        SELECT * FROM, dann JOIN, dann WHERE-Kriterien, dann ORDER BY und dann LIMIT

        Das 'INNER JOIN verweis' benutzt man eher selten, zumindest kann man auch alles ohne die Anweisung programmieren ;)

        Ich benutze die JOIN-Klausel stets, wenn ein JOIN vorhanden ist und schiebe dies nicht in die WHERE-Klausel. Meiner Meinung nach wird dadurch die Struktur klarer. Selbstverständlich bin ich der Meinung, dass man den JOIN eher oft benutzt.

        Freundliche Grüße

        Vinzenz