gpt4 book ai didi

MySQL CASE EnumInt WHEN Varchar ELSE Int 返回为 BLOB - 如何转换为 Varchar?

转载 作者:可可西里 更新时间:2023-11-01 08:00:03 25 4
gpt4 key购买 nike

以下返回一个 BLOB,我如何将这个 else 值转换为 VARCHAR 来解决我的问题?

SELECT
CASE EnumID
WHEN 1 THEN 'Red'
WHEN 2 THEN 'Green'
WHEN 3 THEN 'Blue'
ELSE EnumID
END AS EnumValue
FROM Table

在 MSSQL/TSQL 中我使用 ELSE CAST([EnumID] AS VARCHAR(100)) 但是 MySQL 提示。

我想要的只是一个故障转移,如果这个存储过程不知道一个新的枚举值来管理代码、主数据库和数据仓库数据持久性。

必然是一个显而易见的答案...


显然问题似乎出在使用 VARCHAR 上?刚发现 CAST(EnumID AS CHAR(20)) 在大小写切换中工作正常。

唉...我为什么要费心发布我需要的只是一只可以与之交谈的橡皮鸭...

最佳答案

使用cast

SELECT 
CAST(CASE EnumID
WHEN 1 THEN 'Red'
WHEN 2 THEN 'Green'
WHEN 3 THEN 'Blue'
ELSE EnumID
END AS VARCHAR(20)) AS EnumValue
FROM `Table`

参见:http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html

关于MySQL CASE EnumInt WHEN Varchar ELSE Int 返回为 BLOB - 如何转换为 Varchar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7830506/

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