PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Die Klammerregeln von PostgreSQL, gibt es eine zusammengefasste Anleitung?

"Gibt es eine zusammenfassende Anleitung?" , naja... Die Antwort ist nein , also:Anfassen! Diese Antwort ist ein Wiki, schreiben wir.

Zusammengefasster Leitfaden

Lassen Sie,

  • F () eine übliche Funktion. (Beispiel:ROUND )
  • L () ein funktionsähnlicher Operator (z. B. ANY )
  • f eine operatorähnliche Funktion (z. B. current_date )
  • Op ein Operator
  • Op1 , Op2 sind unterschiedliche Operatoren
  • A-, B-, C-Werte oder -Ausdrücke
  • S eine Ausdrucksliste, als "(A,B,C)"

Die Regeln, die diese Elemente verwenden, haben die Form

  • Regel :Notizen.

"reine" mathematische Ausdrücke

Wenn Op , Op1 , Op2 sind mathematische Operatoren (z. B. + , - . * ) und F () ist eine mathematische Funktion (zB ROUND()). ).

Regeln für skalare Ausdrücke und "rein Array-Ausdrücke":

  • Eine Operation B =(A Op B) :Die Klammern sind optional.
  • Ein Op1 B Op2 C :müssen Vorrang überprüfen .
  • (Ein Op1 B) Op2 C :Erzwinge "zuerst (A Op1 B)".
  • Ein Op1 (B Op2 C) :Erzwingen "zuerst (B Op2 C)".
  • F (A) =(F (A)) =F ((A)) =(F ((A))) :Die Klammern sind optional.
  • S =(S) :die externen Klammern sind optional.
  • f =(f ) :Die Klammern sind optional.

Ausdrücke mit funktionsähnlichen Operatoren

Regeln für Operatoren als ALL , ANY , ROW , SOME usw.

  • L (A) =L ((A)) :Die Klammern sind im Argument optional.
  • (L (A)) :SYNTAXFEHLER.

...Weitere Regeln? Bitte helfen Sie hier beim Bearbeiten.