このようなデータを含むMySQLデータベースにテーブルがあります。
ID text
1 Action Jackson
2 The impaler
3 The chubby conquistador
4 Cornholer
先頭の「The」を除いたアルファベット順に表示したい。これが私が思いついたものです。
SELECT ID, CASE LEFT(l.text, 4) WHEN "The " THEN CONCAT(RIGHT(l.text, LENGTH(l.text) - 4), ", The") ELSE l.text END AS "word"
FROM list l
この解決策は少し不格好に思えますが、もっとエレガントな答えはありますか?