postgres在与字符串连接时将null视为空字符串

时间:2013-11-22 07:17:14

标签: enterprisedb

当我在我们的一台服务器上查询以下

     select null || 'query' ,'|',version

结果为null无显示

当我在具有相同版本的postgresql服务器

的另一台服务器上触发相同的查询时

我的结果为

 query

两台服务器上的postgres版本

  1. i686-pc-linux-gnu上的EnterpriseDB 9.2.1.3,由gcc(GCC)4.1.2 20080704(Red Hat 4.1.2-52)编译,32位
  2. x86_64-unknown-linux-gnu上的EnterpriseDB 9.2.1.3,由gcc(GCC)4.1.2 20080704(Red Hat 4.1.2-52)编译,64位
  3. 为什么会出现这种不同的行为?

1 个答案:

答案 0 :(得分:2)

检查两台服务器上edb_redwood_strings参数的设置。

查看更多Oracle Compatible Configuration Parameters

  

edb_redwood_strings - 为了字符串连接操作,将NULL等于空字符串。对于Oracle兼容行为,请将edb_redwood_strings设置为TRUE。

SET edb_redwood_strings TO off; -- or on