The table shows function names only. For details about syntax and arguments, consult your RDBMS documentation, or click on hyperlinks for useful notes and explanations.
The table is not an exhaustive list of all SQL functions on all platforms.
The table refers to ROWNUM, SYSDATE and USER even though these are technically pseudo-columns rather than functions. Pseudo-columns are like function calls without arguments. They are different from functions in that the call syntax does not use empty parentheses.
The table refers to TOP even though this is technically an in-line operator and not a function. Rather than taking input from arguments passed between parentheses, TOP operates on a query result, in the same way as DISTINCT or ORDER BY.
RDBMS-specific functions
A function in a row where the USoft column has a dash (-) is RDBMS-specific. RDBMS-specific functions are known to the USoft parser and they will work in your USoft application: USoft will automatically send the expression to the RDBMS for evaluation. However, a USoft application with RDBMS-specific functions is NOT portable to platforms that don't support the function, or that support it differently. You can avoid the risk of non-portability by using convertible functions.
Convertible functions
A function in a row where the USoft column has a function name is convertible. A convertible function is portable to those platforms that have a function name, as opposed to a dash (-), in that row. There may be restrictions. Details on restrictions may often be found by clicking on hyperlinked function names.
A convertible function may be resolved by the Rules Engine itself, or USoft may convert it to an RDBMS-native function call and then send that function call to the RDBMS for evaluation. The table does not systematically show which of these implementation modes applies. It does supply this information for many of the functions that have the purpose to convert a value between two base datatypes, such as DATE_TO_CHAR.
A row that has the same function name in all columns is for a convertible function, but does not detail its implementation. A row that has a function name in the USoft column and that same function name in an RDBMS column is for a function convertible to that RDBMS platform, but does not detail how this is implemented.
You can always trace how a convertible function is implemented on your RDBMS by running Benchmark Profiler or Benchmark Tracer. See the USoft Benchmark Guide for instructions on how to do this.
|