[opengeodb] Sortierreihenfolge ändern
Michael Diederich
michael at md-d.org
Mit Jun 20 15:31:37 CEST 2007
Hi!
Martin Feiger schrieb:
> SELECT *,
> (SELECT sqrt( (
> abs( c1.Latitude - c2.Latitude ) * abs( c1.Latitude - c2.Latitude )
> *6400 ) + ( abs( c1.Longitude - c2.Longitude ) *
> abs( c1.Longitude - c2.Longitude ) *12100 ) ) AS dist
> FROM add_geoinfo c1, add_geoinfo c2
> WHERE c1.ZipCode = '.$zipCode.'
> AND c2.ZipCode = zip
> ) AS distance
> Das Problem ist, dass User ohne gültige PLZ zuerst angezeigt werden
> (distance=NULL) und anschliessend die Treffer
> in der aufsteigenden Reihenfolge.
>
> Wie könnte man zuerst alle User mit gültiger PLZ und anschliessend
> distance=NULL, also User ohne gültige PLZ anzeigen ?
>
> Das ganze unbedingt in _einem_ SQL Statement, sonst funktioniert das
> Blättern über LIMIT nicht!
Select .... if(isnull(plz), 99999, plz) ... from ....
PLZ = NULL wird dann zu 99999 und ganz am Schluß stehen.
(Habs jetzt nicht getestet, aber müsste so gehen :)
Liebe Grüße,
Michael