Mysql 使用数字和其他非字母字符对varchar列进行排序

Mysql 使用数字和其他非字母字符对varchar列进行排序,mysql,sql,Mysql,Sql,我有一个mysql表,其中包含一列存储时间序列,如下所示: 08:00-09:00 09:00-10:00 07:00-08:00 11:00-12:00 06:00-07:00 ... 等等 在进行mysql查询时,我希望结果按此列排序,顺便说一下,此列是varchar数据类型列 我想要的结果是: 06:00-07:00 07:00-08:00 08:00-09:00 09:00-10:00 11:00-12:00 这就是我一直在尝试但没有成功的东西: SELECT * FROM mytabl

我有一个mysql表,其中包含一列存储时间序列,如下所示:

08:00-09:00
09:00-10:00
07:00-08:00
11:00-12:00
06:00-07:00
... 等等

在进行mysql查询时,我希望结果按此列排序,顺便说一下,此列是varchar数据类型列

我想要的结果是:

06:00-07:00
07:00-08:00
08:00-09:00
09:00-10:00
11:00-12:00

这就是我一直在尝试但没有成功的东西:

SELECT * FROM mytable ORDER BY CAST(mycolumn AS INT) ASC;  

任何帮助都将不胜感激

按字符串值对列进行排序会产生所需的结果:

SELECT *
FROM mytable
ORDER BY mycolumn ASC;
数字在左边用零填充,因此它们的排序方式与字符串和整数相同