phpbar.de logo

Mailinglisten-Archive

[php] SQL Abfrage

[php] SQL Abfrage

Andi Voss andi at andis.mine.nu
Don Nov 17 10:37:05 CET 2005


> SELECT * FROM `adresse` WHERE (
> (`PLZ` >= 60000 AND `PLZ` < 61000) OR
> (`PLZ` >= 63200 AND `PLZ` <= 663329) OR
> (`PLZ` >= 64200 AND `PLZ` <= 64409) OR
> (`PLZ` >= 64500 AND `PLZ` <= 64589) OR
> (`PLZ` >= 67500 AND `PLZ` <= 67599) OR
> (`PLZ` >= 67260 AND `PLZ` <= 67319) OR
> (`PLZ` >= 67800 AND `PLZ` <= 67829) )
> AND `LAND` LIKE 'D' ORDER BY `PLZ`
> 
> Problem:
> Es werden PLZ von 60313 (korrekt) bis 97828 (warum sind die mit drin?) 
> angezeigt.

Du hast:
 > (`PLZ` >= 63200 AND `PLZ` <= 663329) OR
D.h. 663329 ist, wie Ringo schon gesagt hat, 6-stellig und damit größer 
als alles andere und damit erhältst du auch die 97828 bei der Art von 
Abfrage wie du es machst.

> 
> Oder anderes ausgedrückt, warum bekomme ich nicht einfach all die PLZ Gebiete, 
> welche ich angegeben habe?

wahrscheinlich meinst du das hier (Vermutung):
 > (`PLZ` >= 63200 AND `PLZ` <= 63329) OR

probiers mal aus.

Gruss Andi

php::bar PHP Wiki   -   Listenarchive