我目前有一个使用计算值进行排序的数据库。计算缓存在字符串列中,但该值保证为自然数。我正在尝试更改列的数据类型以加快排序,但我想不出快速解决方案。
我目前的计划是:
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;
我接近这个错误的方式吗?对于一个非常简单的改变来说,似乎有点大惊小怪。
答案 0 :(得分:1)
您只需将列更改为其他类型
即可ALTER TABLE table1 MODIFY col1 INTEGER NOT NULL;