PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks. |
 |

18-09-2003, 14:19
|
netfun
Newbie
|
|
Registriert seit: Aug 2003
Beiträge: 2
|
|
Sortierung von Spalten mit Umlauten
Hallo,ich lese aus einer Datenbank Länder aus und möchte diese slphabetisch sortieren. Mit "order by land" klappt das zwar auch, allerdings werden länder die mit umlauten beginngen, z.B. Österreich ganz ans ende gesetzt. Gibt es eine einfache möglichkeit, dass diese nach O erscheinen und nicht am Ende?
Ich hab das nun ausprobiert:
$query = "SELECT *, REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE(name_en, 'Ä', 'ae'), 'Ö', 'OE'), 'Ü', 'ue'),'ä', 'ae'), 'ö', 'oe'), 'ü','ue') AS name_en FROM country ORDER BY name_en";
Aber er hängt mir trotzdem das Ö an das Ende (?)
Danke euch.
|

18-09-2003, 14:26
|
mrhappiness
PHP Guru
|
|
Registriert seit: Oct 2002
Beiträge: 14.890
|
|
Re: Sortierung von Spalten mit Umlauten
Zitat:
Original geschrieben von netfun
ORDER BY name_en
|
da steht das ja nochmit umlauten drin
lass dir name_en ausgeben (mit umlauten) und lass nach replace... sortieren
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
|

18-09-2003, 15:49
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 25.236
|
|
das dieses beispiel mit einer weiteren hilfsspalte in der tabelle arbeitet, hast du aber schon gelesen, oder ...?
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

18-09-2003, 15:50
|
mrhappiness
PHP Guru
|
|
Registriert seit: Oct 2002
Beiträge: 14.890
|
|
Code:
SELECT *
FROM country
ORDER BY
REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE(name_en, 'Ä', 'ae'), 'Ö', 'OE'), 'Ü', 'ue'),'ä', 'ae'), 'ö', 'oe'), 'ü','ue')
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
|

18-09-2003, 15:51
|
crisdoe
Member
|
|
Registriert seit: Jul 2001
Ort: grahl duo-back
Beiträge: 229
|
|
try this!
PHP-Code:
ORDER BY REPLACE(REPLACE(REPLACE(name_en,'ä','ae'),'ö','oe'),'ü',ue) ASC
... habs grad gesehen, der eigentliche urheber war wieder schneller
|

18-09-2003, 16:43
|
netfun
Newbie
|
|
Registriert seit: Aug 2003
Beiträge: 2
|
|
Mhm
Ich hatte folgendes auch schonprobiert, aber trotzdem bleibt Österreich am Ende hinter Y.
PHP-Code:
$query = "SELECT * FROM country ORDER BY REPLACE(REPLACE(REPLACE(name_en,'Ä','ae'),'Ö','OE'),'Ü','UE')";
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Thema bewerten |
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|