gpt4 book ai didi

mysql - 在 MySql 中将 varchar 列值转换为整数

转载 作者:行者123 更新时间:2023-11-29 21:06:35 29 4
gpt4 key购买 nike

我们在 MySql 中有一个表,在该表中我们有一个名为“type”的 varchar 列。

表包含大约 5000 万条记录。

从日志限制 3 中选择不同的 log_type;

+-------------------+
| type |
+-------------------+
| EMAIL_SENT |
| EMAIL_OPEN |
| AD_CLICKED |
+-------------------+

到目前为止,我们有 70 种不同的类型。 future 我们将会有更多类型。

现在我们想要将此 varchar 列转换为整数列。

只是我们想更新如下

对于 EMAIL_SENT,我将使用 1对于 EMAIL_OPEN 我将使用 2等等

然后结果列将如下所示

+-------------------+
| type (int) |
+-------------------+
| 1 |
| 2 |
| 3 |
+-------------------+

我们还更改了其他一些列,因此我们正在创建新表并加载现有表中的所有值,如下所示

insert into new_table select * from old_table

在将值加载到新表中时,我们如何进行 varchar 到 int 的转换。

最佳答案

只需使用一个巨大的案例:

insert into new_table(LogTypeId, . . .)
select (case logtype
when 'EMAIL_SENT' then 1
when 'EMAIL_OPEN' then 2
. . .
end), . . .
from logs;

创建新表的策略比尝试更新现有表要好得多。

关于mysql - 在 MySql 中将 varchar 列值转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36768171/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com