Numeric Rules

<Numeric Exp> consists of this:

<Sum>

Sums

A sum is a chain of sums, differences, or both:

<Sum> consists of one of these:

<Addend>

<Sum> + <Addend>

<Sum> – <Addend>

Addends

An addend is a negatable expression or a product.

These expressions can be added to or subtracted from one another without parentheses surrounding each, due to the accepted arithmetic operator precedence.

<Addend> consists of one of these:

<Negate Exp>

<Addend> * <Negate Exp>

<Addend> / <Negate Exp>

Negatable expressions

A negatable expression is a numeric value with or without a unary negative.

<Negate Exp> consists of one of these:

– <Numeric Value>

<Numeric Value>

- <IdValue>

Numeric values

A numeric value can be any of these:

  • A numeric constant
  • A function call returning a numeric value
  • A numeric sub-expression enclosed in parentheses

<Numeric Value> consists of one of these:

IntegerLiteral

RealLiteral

IF (<Boolean Exp>, <Numeric Exp>, <Numeric Exp>)

IF (<Boolean Exp>, <Numeric Exp>, <Typeless Exp>)

IF (<Boolean Exp>, <Typeless Exp>, <Numeric Exp>)

Numeric built-in functions:

DATEDIFF (<TimeInterval>, <Date Exp>, <Date Exp>)

DATEDIFF (<TimeInterval>, <Date Exp>, <Typeless Exp>)

DATEDIFF (<TimeInterval>, <Typeless Exp>, <Date Exp>)

DATEDIFF (<TimeInterval>, <Typeless Exp>, <Typeless Exp>)

DATEPART (<TimeInterval>, <Date Exp>)

DATEPART (<TimeInterval>, <Typeless Exp>) LEN (<String Exp>)

LEN (<Typeless Exp>)

INSTR (<String Exp>, <String Exp>)

INSTR (<String Exp>, <Typeless Exp>)

INSTR (<Typeless Exp>, <String Exp>)

INSTR (<Typeless Exp>, <Typeless Exp>)

CEILING (<Numeric Exp>)

CEILING (<Typeless Exp>)

FLOOR (<Numeric Exp>)

FLOOR (<Typeless Exp>)

POWER (<Numeric Exp>, <Numeric Exp>)

POWER (<Numeric Exp>, <Typeless Exp>)

POWER (<Typeless Exp>, <Numeric Exp>)

POWER (<Typeless Exp>, <Typeless Exp>)

ROUND (<Numeric Exp>, <Numeric Exp>)

ROUND (<Numeric Exp>, <Typeless Exp>)

ROUND (<Typeless Exp>, <Numeric Exp>)

ROUND (<Typeless Exp>, <Typeless Exp>)

TRUNC (<Numeric Exp>, <Numeric Exp>)

TRUNC (<Numeric Exp>, <Typeless Exp>)

TRUNC (<Typeless Exp>, <Numeric Exp>)

TRUNC (<Typeless Exp>, <Typeless Exp>)

Event state attributes:

EVENTREVISION ( )

HANDLERSEQ ( )

ACTIONSEQ ( )

Event attributes:

RECIPIENTS (<EventActionRef>)

RESPONDERS (<EventActionRef>)

RESPONDERS (<EventActionRef>, <String Exp>)

RESPONDERS (<EventActionRef>, <Typeless Exp>)

Framework event parameters:

RECORDCAP()

ROWS (Id) ROWS ( )

METHODPARMS ( )

CAST (<Scalar Exp> AS NUMBER)

Sub-expression:

(<Numeric Exp>)