0

我目前正在按年连接列monthly_volunteer_ccyy 和monthly_volunteer_month,这可能会将结果转换为字符串。然后将其转换为 int 以获得由 ccyymm 排序的结果集。

不知何故,它在附近抛出错误INT)。我该怎么做才能让它工作?指出这一点的干净方式也是加分。

SELECT *
FROM monthly_honorarium_processing
ORDER BY cast(CONCAT (
        monthly_volunteer_ccyy
        ,monthly_volunteer_month
        ) AS INT)
4

1 回答 1

2

快速更换:

SELECT *
FROM monthly_honorarium_processing
ORDER BY cast(CONCAT (
        monthly_volunteer_ccyy
        ,monthly_volunteer_month
        ) AS DECIMAL)

这不能正确处理monthly_volunteer_month < 10

为什么不只是做:

SELECT *
FROM monthly_honorarium_processing
ORDER BY
        monthly_volunteer_ccyy
        ,monthly_volunteer_month
于 2013-08-14T17:17:11.327 回答