是否有任何函数可以用蜂巢中的特殊字符替换NULL或空白空间?当我执行下面的语句返回一个语义的异常,说明微调仅适用于字符串/ nvarchar的使用函数替换NULL
CASE
WHEN TRIM(q.address) = '' OR q.address IS NULL THEN '?'
ELSE q.address END as address
请帮助。
是否有任何函数可以用蜂巢中的特殊字符替换NULL或空白空间?当我执行下面的语句返回一个语义的异常,说明微调仅适用于字符串/ nvarchar的使用函数替换NULL
CASE
WHEN TRIM(q.address) = '' OR q.address IS NULL THEN '?'
ELSE q.address END as address
请帮助。
使用LENGTH()检查列值的长度。它返回> 0,如果有某个值,则返回0为空或NULL值。
而且帧列值CASE WHEN ... END块
最后的查询可能看起来像:
SELECT CASE WHEN LENGTH(address) > 0 THEN address ELSE '?' END AS address
FROM table_name;
请参阅Replace the empty or NULL value with specific value in HIVE query result
希望这可以帮助您!
为了更换空,你可以使用合并
Coalesce(q.address, '?')
但似乎你的领域ADRESS类型正确的不使用修剪,你能告诉我们该字段的类型?
你可以粘贴你试图执行的较大的语句吗?你的表中字段的数据类型是什么? – Jared