If you use a standard MySQL server and want to sort your German entries in alphabetical order, you might notice that the entries are actually sorted wrong. For example, entries starting with ös will appear after entries starting with us.
For our non-German readers I’d like to say that if you want to sort German umlauts you need to translate them as outlined below. This procedure also applies to crossword puzzles.
- ä
- ae
- ö
- oe
- ß
- ss
- ü
- ue
Back to the original problem: Why does MySQL sort the entries wrong? The simple answer is, that it tries to sort it using a Swedish character set, which is the default character set of the official MySQL distribution, because – and I quote MySQL documentation here – it works well for most of western Europe and America. You can “fix” this by using special command line options at server startup time. Possibly you also need to alter your existing mySQL databases and tables. But be warned: You have to throw away any indexs before you convert your tables and recreate them afterwards. Otherwise nothing will happen at all.
Consult the MySQL documentation for a detailed description of the above:
Using the German Character Set.
Shameless plug: If this post was useful to you, please consider buying yourself something from one of my Amazon stores: US store, UK store, FR store, DE store, CA store. If you're not into Amazon, why not donate something to GNOME, Mozilla or Wikipedia? Thank you!


