将字符串列更改为整数列的最简洁方法是什么?

时间:2011-11-07 19:57:38

标签: mysql string integer

我目前有一个使用计算值进行排序的数据库。计算缓存在字符串列中,但该值保证为自然数。我正在尝试更改列的数据类型以加快排序,但我想不出快速解决方案。

我目前的计划是:

ALTER TABLE
    items
ADD COLUMN isort INT;

接下来是:

UPDATE
    items
SET
    isort = CAST(sort AS DECIMAL(11, 0));

最后:

ALTER TABLE
    items
DROP COLUMN sort;

ALTER TABLE
    items
RENAME COLUMN isort TO sort;

我接近这个错误的方式吗?对于一个非常简单的改变来说,似乎有点大惊小怪。

1 个答案:

答案 0 :(得分:1)

您只需将列更改为其他类型

即可
ALTER TABLE table1 MODIFY col1 INTEGER NOT NULL;