【发布时间】:2021-05-13 01:00:51
【问题描述】:
你能告诉我为什么这会在 Redshift 中引发错误吗?
WITH Testing_PADDING AS (SELECT '12345678' AS column1)
SELECT LPAD(column1, 9,'0') FROM Testing_PADDING;
这是我收到的错误:
"无效操作:找不到从"未知"到文本的转换函数;"
【问题讨论】:
标签: amazon-redshift lpad
你能告诉我为什么这会在 Redshift 中引发错误吗?
WITH Testing_PADDING AS (SELECT '12345678' AS column1)
SELECT LPAD(column1, 9,'0') FROM Testing_PADDING;
这是我收到的错误:
"无效操作:找不到从"未知"到文本的转换函数;"
【问题讨论】:
标签: amazon-redshift lpad
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;
【讨论】: