Mysql 使用数字和其他非字母字符对varchar列进行排序
我有一个mysql表,其中包含一列存储时间序列,如下所示: 08:00-09:00Mysql 使用数字和其他非字母字符对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
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;
数字在左边用零填充,因此它们的排序方式与字符串和整数相同