我有一个表,其中有一个 TEXT 列,如下所示:
0-4 mėn
5-12 mėn
1-3 metai
4-6 metai
7 metai ir daugiau
文本是立陶宛语。现在数据库的设计使其将值保存为 TEXT,这非常糟糕,但是我需要查询它,以便对数据进行排序。
我写了这个查询:
SELECT DISTINCT `Age`,
SUBSTRING_INDEX(Age, " ", -1) as `AgePrefix`,
SUBSTRING_INDEX(Age, " ", 1) as `AgeValue`
FROM `suoPage`
ORDER BY `AgePrefix`, `AgeValue`
它可以满足我的需要,但问题是“7 metai ir daugiau”。SUBSTRING_INDEX 获取它的 AgePrefix 为“daugiau”,因此它显示为第一条记录。我该如何解决这个问题?