Tím budou všichni umělci, jejichž jména začínají písmenem v a-z, před těmi, kteří nezačínají:
SELECT DISTINCT artist
FROM songs
ORDER BY artist REGEXP '^[a-z]' DESC, artist
Podívejte se, jak to funguje online:sqlfiddle
Možná však budete chtít uložit druhý sloupec se zjednodušeným názvem, abyste je mohli seřadit v pořadí, které dává větší smysl:
artists
artist | simplified_name
------------------------------------
&i | i
+NURSE | nurse
2007excalibur2007 | excalibur
Hodnoty pro simplified_name
nelze snadno generovat v MySQL, takže možná budete chtít použít programovací jazyk pro obecné použití k vytažení všech umělců, jejich transformaci na zjednodušená jména a poté naplnění databáze výsledky.
Jakmile to uděláte, můžete použít tento dotaz:
SELECT DISTINCT artist
FROM artists
ORDER BY simplified_name