你能告诉我为什么这会在 Redshift 中引发错误吗?
WITH Testing_PADDING AS (SELECT '12345678' AS column1)
SELECT LPAD(column1, 9,'0') FROM Testing_PADDING;
这是我收到的错误:
"无效操作:找不到从"未知"到文本的转换函数;"
你能告诉我为什么这会在 Redshift 中引发错误吗?
WITH Testing_PADDING AS (SELECT '12345678' AS column1)
SELECT LPAD(column1, 9,'0') FROM Testing_PADDING;
这是我收到的错误:
"无效操作:找不到从"未知"到文本的转换函数;"
Redshift 无法从上下文中判断数据类型,所以需要显式设置
WITH Testing_PADDING AS (SELECT '12345678'::text AS column1)
SELECT
LPAD(column1, 9, '0')
FROM Testing_PADDING;
我怀疑您的一个字符串没有被视为文本 - 可能是 column1 文本。(抱歉没有集群不测试)
尝试:
WITH Testing_PADDING AS (SELECT '12345678'::text AS column1)
SELECT LPAD(column1, 9,'0'::text) FROM Testing_PADDING;