Zwei mal "WHERE" in einem sql-Querry?

Hektik

Erfahrenes Mitglied
Hallo zusammen!

Ich würde gerne wissen, wie ein sql-querry aussehen muss, wenn man aus einer Tabelle eine Zeile auslesen möchte, auf die 2 Eigenschaften zutreffen

Also wenn ich eine Tabelle habe, nehmen wir mal an Daten von Deutschland:

Bundesland | Einwohner | Hauptstadt | Fläche | ID
======================================
xxxxxxxxxx|xxxxxxxxxx|xxxxxxxxxx|xxxxxxx|xxxx
xxxxxxxxxx|xxxxxxxxxx|xxxxxxxxxx|xxxxxxx|xxxx
xxxxxxxxxx|xxxxxxxxxx|xxxxxxxxxx|xxxxxxx|xxxx
xxxxxxxxxx|xxxxxxxxxx|xxxxxxxxxx|xxxxxxx|xxxx

Wenn ich jetzt eine Zeile auslesen möchte, z.B. in der "Einwohner < 500000" UND "Fläche < 1.800.000" ist, wie sieht dann der Querry aus?

Vielleicht so?
PHP:
"SELECT * FROM tabelle WHERE einwohner < 500000 &&  flaeche < 180000 ORDER by ID"
 
Ich weiss nicht ob das in PHP gaengige && auch von MySQL angenommen wird. Ich nutze dort immer AND.
Das wuerde dann also so aussehen:
Code:
"SELECT * FROM tabelle WHERE einwohner < 500000 AND flaeche < 180000 ORDER by ID"
 
WHERE darf nicht zweimal vorkommen, aber du kannst andere Dinge kombinieren. Möglich ist zum Beispiel auch folgende Konstruktion:

WHERE feld = bedingung AND feld = bedingung OR feld=bedingung AND feld = bedingung

Du darfst nur nicht durcheinander kommen ;)
 
crazyhero hat gesagt.:
WHERE darf nicht zweimal vorkommen, aber du kannst andere Dinge kombinieren. Möglich ist zum Beispiel auch folgende Konstruktion:

WHERE feld = bedingung AND feld = bedingung OR feld=bedingung AND feld = bedingung

Du darfst nur nicht durcheinander kommen ;)

Bei dem Beispiel von dir, ist es da so, dass es sich mit OR und AND verhält wie mit der Punkt-vor-Strichrechnung? Also das OR einfach ODER bedeutet, AND jedoch zwei aneinander bindet? Also, wie in Klammern zusammengesetzt?

So: ?
WHERE (feld = bedingung AND feld = bedingung) OR (feld=bedingung AND feld = bedingung)
 
Gumbo hat gesagt.:
Die Operatoren haben auch bei MySQL eine genaue Prioritätenreihenfolge. Zusätzliche Klammern sind daher oft überflüssig und irritieren nur MySQL bei der Optimierung der Abfrage.
Danke Gumbo (mal wieder :) )

Genau das was ich wissen wollte :)

Und danke an Dennis und Crazy Hero für die allesamt informationsträchtigen Antworten :)
 
Zurück