当前位置: 首页 > 知识库问答 >
问题:

如果字符串列中的值为空,如何将该列替换为0

匡安宜
2023-03-14
CREATE TABLE EMP(ENAME VARCHAR(10));
INSERT INTO EMP VALUES('JACK');
INSERT INTO EMP VALUES(null);

SELECT NVL(ENAME,0) FROM EMP1;

谢谢,纳瓦兹

共有1个答案

卫学真
2023-03-14

SQL是强类型的。NVL的输出类型被推断为数字,因此实际查询如下所示

SELECT NVL(ENAME::NUMBER, 0) FROM EMP1;

您应该决定您的输出应该是什么类型。如果需要字符串,则需要传递nvl一个字符串,如

SELECT NVL(ENAME, '0') FROM EMP1;

如果需要整数,则需要安全地将字符串转换为整数。例如,如果希望非整数变为null,则为0,则可以使用

SELECT NVL(TRY_TO_INTEGER(ENAME), 0) FROM EMP1;
 类似资料:
  • 问题内容: 如何使用Python将列表转换为字符串? 问题答案: 通过使用 或者,如果列表是整数,则在连接元素之前将其转换。

  • 我有一个数据帧,其中包含一个非常大的整数值,例如: 当我试图将其转换为长时,它在Java工作,但不是在火花环境下,我得到了 然后我尝试将其转换为十进制(BigDecimal)值。同样,可以很容易地在Java中完成,但在Spark:dframe中。带列(“c\U编号”,列(“c\U a”)。cast(新的DecimalType()); 这样我就不会得到任何异常,但是我可以看到所有结果值都为null。

  • 问题内容: 如何在Python中将列表转换为以空格分隔的字符串? 例如,我要转换此列表: 入弦 空间很重要。到目前为止,我不希望自己尝试过 问题答案: 您需要使用空格而不是空字符串来连接…

  • 问题内容: 我需要将INT数据类型的列ID转换为空字符串[‘’]。我不应该修改源列的数据类型,而需要在另一个表的转换中对其进行转换。ID列为“ nullable”,因为其中包含null。这是我的代码。 这将返回: 当我修改我的CASE语句时,它如下: 它返回: 问题答案: 这是你想要的吗? 您必须将整个结果列变成单个列。如果要使用空白值,则类型为某种字符串。 在您的示例中,意味着的结果是整数,这就

  • 我有字符串列表 我需要将该列表转换为字符串,如下所示: 我想获取的字符串是: 如果 那么我只需要 如果,那么我需要。 有没有可能以一种灵活的方式做到那一点,并且避免编写多个? UPD:我在

  • 这个问题的范围是JSON处理的JavaAPI(JSR 353)。 给定一个元素为JsonString的JsonArray,我如何轻松地将其转换为