拼接符“II”在Oracle和HGDB中使用的差异

文章目录

环境

系统平台:Microsoft Windows (64-bit) 10

版本:5.6.4

症状

如下情况所示:在Oracle中和HGDB中使用拼接符"||"结果不一致。

Oracle:

sql 复制代码
SQL> select null||'123' from dual ;

NUL
--------------------------------
123

HGDB:

sql 复制代码
highgo=# select null||'123' from dual;
 ?column?
--------------------------------

(1 行记录)

问题原因

在Oracle中和HGDB中使用拼接符"||"拼接NULL时,结果不一致。

解决方案

解决方案一:

使用concat()函数进行拼接,取代"||",如下所示:

sql 复制代码
highgo=# select concat(null,'123');
 concat
--------
 123
(1 行记录)

解决方案二:

使用coalesce()函数将null转换为'',如下所示:

sql 复制代码
highgo=# select coalesce(null,'')||'123';
 ?column?
----------
 123
(1 行记录)
相关推荐
ZhengEnCi5 分钟前
J7A-已有数据表如何安全添加新字段 🛡️
数据库
2401_833197738 分钟前
用Python制作一个文字冒险游戏
jvm·数据库·python
一叶飘零_sweeeet15 分钟前
数据库连接池天花板之争:HikariCP 与 Druid 底层原理 + 高并发调优全拆解
数据库·hikaricp·数据库连接池·druid
GoodStudyAndDayDayUp15 分钟前
RUO-VUE-PRO权限关联sql
java·数据库·sql
@insist12317 分钟前
数据库系统工程师-SQL 数据定义语言(DDL)核心知识点与软考实战指南
数据库·oracle·软考·数据库系统工程师·软件水平考试
专利观察员18 分钟前
情报升维,决策降本:2026年专利数据库和专利检索实践的演进逻辑和实测
数据库
次旅行的库22 分钟前
【问渠哪得清如许-数据分析】学习笔记-下
数据库·笔记·sql·学习
万粉变现经纪人26 分钟前
如何解决 pip install cx_Oracle 报错 未找到 Oracle Instant Client 问题
数据库·python·mysql·oracle·pycharm·bug·pip
sw12138926 分钟前
使用Plotly创建交互式图表
jvm·数据库·python