SELECT mit Auswahl LIKE < 20 & >10

uwee

Erfahrenes Mitglied
Hallo an alle!

Folgendes Problem:
Ich möchte aus einer Tabelle alle Datensätze heraussuchen, die einen Bestand von weniger als 20 aber mehr als 10 haben.
Mit der Syntax
PHP:
"SELECT id ,name, lvl, beschreibung, bild FROM monster ".
 "WHERE < '21' & > '10' " .
"ORDER BY lvl"
komm ich aber net weit, wird ein Fehler gemeldet... wie stelle ich es also am besten an?

UweE
 
Hallo Uwe,

wie sieht denn insgesamt dein Tabellenaufbau aus? Mir ist noch nicht klar, aus welcher Quelle du deine Bestandszahl bekommst. Hast du dazu eine weitere Tabelle oder speicherst du mehrere identische Datensätze in deiner angegebenen Tabelle:confused:
 
Die Tabelle sieht vor, dass unter "lvl" der Bestand angegeben wird.
Die Datensätze sind per ID eindeutig zu identifizieren. Allerdings gibt es es mehrere DS, die eben den gleichen oder eien ähnlichen Bestand haben. Daher möchte ich diese spezielle Auswahl machen.
Die möglichen Auswahlmöglichkeiten sollen in 10er-Schritten erfolgen. Das ist nicht das Problem. Wie frage ich aber einen "Bereich" ab? größer als 10 aber kleiner 20 im Betand

UweE
 
uwee hat gesagt.:
Die Tabelle sieht vor, dass unter "lvl" der Bestand angegeben wird.
Dann musst du das auch angeben, bpsw. so:
SQL:
WHERE `lvl` < 21
Ausserdem solltest du, da es sich ja vermutlich um ganzzahlige Werte und nicht um Zeichenketten handelt, die einfachen Anführungszeichen um die Zahlen weglassen.
 
ja, damit wähle ich alles aus, was kleiner ist als 21.
Ich möchte aber gleichzeitig auch alle ausschließen, die kleiner als 10 sind.
Ich möchte NUR die Bestände von 10-20 haben!
 
Das war ja nur ein Beispiel, etwas mitdenken ist erlaubt. Dahinter kommt noch AND `lvl` > 10.

Du könntest es auch so machen:
SQL:
WHERE `lvl` BETWEEN 11 AND 19
(Das Schlüsselwort BETWEEN wird in MySQL leider etwas unsauber verwendet; eigentlich müsste es ja BETWEEN 10 AND 20 heissen.)
 
Zurück