Global Functions
The DB Interface Module provides a predefined set of global functions which allow an application to build portable SQL expressions. Table 4 lists restrictions on the global functions associated with RWDBExpr.
Table 4 – Restrictions on the use of global functions with RWDBExpr 
Function
Restrictions
rwdbAvg(const RWDBExpr&)
None. Corresponds to: AVG(expr)
rwdbCast(const RWDBExpr&,
const RWDBValue&)
None. Corresponds to:{fn CONVERT(expr, val)}
rwdbCast(const RWDBExpr&,
const RWDBValue&,
const RWDBExpr&)
Same as the two-expression form, as Microsoft SQL Server does not support this form.
rwdbCast(const RWBDExpr&,
const RWDBValue&,
const RWDBExpr&,
const RWDBExpr&)
Same as the two-expression form, as Microsoft SQL Server does not support this form.
rwdbCharLength(const RWDBExpr&)
None. Corresponds to: {fn LENGTH(expr)}
rwdbCount()
None. Corresponds to: COUNT(*)
rwdbCount(const RWDBExpr&)
None. Corresponds to: COUNT(expr)
rwdbCountDistinct(const RWDBExpr&)
None. Corresponds to: COUNT(DISTINCT expr)
rwdbCurrentUser()
None. Corresponds to: USER_NAME()
rwdbExists(const RWDBSelectorBase&)
None. Corresponds to: EXISTS(sel)
rwdbLower(const RWDBExpr&)
None. Corresponds to: {fn LCASE(expr)}
rwdbMax(const RWDBExpr&)
None. Corresponds to: MAX(expr)
rwdbMin(const RWDBExpr&)
None. Corresponds to: MIN(expr)
rwdbName(const RWCString&,
const RWDBExpr&)
None. Corresponds to: expr AS str
rwdbPosition(const RWDBExpr&,
const RWDBExpr&)
None. Corresponds to:{fn LOCATE(expr0, expr1)}
rwdbSessionUser()
None. Corresponds to: USER_NAME()
rwdbSubString(const RWDBExpr&,
const RWDBExpr&)
None. Corresponds to:{fn SUBSTRING (expr0, expr1, fn LENGTH(expr0))}
rwdbSubString(const RWDBExpr&,
const RWDBExpr&,
const RWDBExpr&)
None. Corresponds to:{fn SUBSTRING (expr0, expr1, {fn LENGTH(expr0)} )}
rwdbSum(const RWDBExpr&)
None. Corresponds to: SUM(expr)
rwdbSystemDateTime()
None. Corresponds to: { fn NOW() }
rwdbSystemUser()
None. Corresponds to: SUSER_SNAME()
rwdbTrimLeading(const RWDBExpr&,
const RWDBExpr&)
None. Corresponds to: LTRIM(expr1)
rwdbTrimTrailing(const RWDBExpr&,
const RWDBExpr&)
None. Corresponds to: RTRIM(expr1)
rwdbTrimBoth(const RWDBExpr&,
const RWDBExpr&)
None. Corresponds to: LTRIM(RTRIM(expr1))
rwdbUpper(const RWDBExpr&)
None. Corresponds to: {fn UCASE(expr)}