在mysql中按照PT1000S更改joda-time durations的顺序

时间:2011-12-22 22:38:15

标签: mysql grails sql-order-by jodatime

我在我的grails应用程序中使用joda-time grails插件来处理持续时间。该插件在数据库中保存以毫秒为单位解码的持续时间,前缀为“PT”,后缀为“s”。示例1 minute = PT3600S

现在我想订购这一行。因为它是一个varchar排序变得​​复杂或更好,而不是因为我想要它被命令:(

结果

PT12551S
PT21142S
PT23240S
PT4672S
PT4792S
PT4877S

预期(如果类型为int ...)

PT4672S
PT4792S
PT4877S
PT12551S
PT21142S
PT23240S

任何想法如何解决这个问题?我可以更改存储在db中的数据格式吗?我可以更改排序以考虑条目的长度吗?

1 个答案:

答案 0 :(得分:0)

我发现最好的方法就是暂时不要使用这种快捷方式。我现在将持续时间保存为整数。这样就很容易订购和添加。