PostgreSQL中的add equals运算符是什么?

乍得

在Oracle SQL中,有一个(+)=运算符,用于添加等于。

我一直在在线搜索,但是找不到与PostgreSQL语法等效的表达式,该运算符在PostgreSQL中存在吗?如果没有,我将如何实现相同的功能?

先感谢您。

皮佛

OUTER JOIN在PostgreSQL中记录。

Oracle SQL参考》中也对此进行了说明,其中指出:

Oracle建议您使用FROM子句OUTER JOIN语法而不是Oracle join运算符。使用Oracle连接运算符(+)的外部连接查询受以下规则和限制的约束,这些规则和限制不适用于FROM子句的OUTER JOIN语法:

您不能在还包含FROM子句联接语法的查询块中指定(+)运算符。

(+)运算符只能出现在WHERE子句中,或者在FROM子句的左相关(指定TABLE子句时)的上下文中出现,并且只能应用于表或视图的列。

如果A和B通过多个联接条件联接,则必须在所有这些条件中使用(+)运算符。如果不这样做,那么Oracle数据库将仅返回由简单联接产生的行,而不会发出警告或错误来通知您没有外部联接的结果。

如果在外部查询中指定一个表,而在内部查询中指定另一个表,则(+)运算符不会产生外部联接。

注意:在Oracle PL / SQL中,既没有+ =也没有+:=运算符:

SQL> declare
  2  i numeric := 0;
  3  begin
  4   i+:=1;
  5  end;
  6  /
 i+:=1;
  *
ERROR at line 4:
ORA-06550: line 4, column 3:
PLS-00103: Encountered the symbol "+" when expecting one of the following:
:= . ( @ % ;
The symbol "+" was ignored.


SQL> --
SQL> declare
  2  i numeric := 0;
  3  begin
  4   i+=1;
  5  end;
  6  /
 i+=1;
  *
ERROR at line 4:
ORA-06550: line 4, column 3:
PLS-00103: Encountered the symbol "+" when expecting one of the following:
:= . ( @ % ;


SQL> show errors
No errors.
SQL> --
SQL> declare
  2  i numeric := 0;
  3  begin
  4   i := i + 1;
  5  end;
  6  /

PL/SQL procedure successfully completed.

SQL> 

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章