Skip to main content

Check out how to read this article by clicking the “Show content” link.

I have a SQL function in mind. Can I use it in my USoft application?
Find the function in the alphabetic list. Look in the column for your database platform. If there is a dash in that cell, or if the function is not in the list at all, then the function is not supported.

Otherwise, have a look also in the USoft column (the second column from the left):

  • If the same name is listed for USoft as for your database platform, USoft can handle the function itself, at Rules Engine level.
  • If a different name is listed for USoft than for your database platform, you should use the name listed for USoft. USoft will automatically convert the function to the function known by the database platform.
  • If there is a dash in the USoft column, then the function is RDBMS-specific. USoft will automatically send the expression to the RDBMS for evaluation. You can use the function in your USoft application, but it will not port to platforms that do not support the function.

There may be special details or restrictions. Consult your RDBMS documentation. In some places, function names are hyperlinked to additional information supplied by USoft.

To get more detail on how USoft converts a function, and whether or not it is sent to the RDBMS for evaluation, run a profile in USoft Benchmark.

Special cases
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 and RECORDS even though these are technically in-line operators and not functions. Rather than taking their input from arguments passed between parentheses, TOP and RECORDS operate on a query result, in a way similar to DISTINCT, GROUP BY, or ORDER BY.

Name USoft Oracle SQLServer ODBC JDBCY, Derby
SECOND - - - SECOND -
SESSION_ID SESSION_ID SESSION_ID SESSION_ID SESSION_ID SESSION_ID
SIGN SIGN SIGN SIGN SIGN SIGN
SIN SIN SIN SIN SIN SIN
SINH - - - - SINH
SOUNDEX - SOUNDEX SOUNDEX SOUNDEX -
SPACE - - SPACE SPACE -
SQRT SQRT SQRT SQRT SQRT SQRT
STDDEV STDDEV STDDEV STDDEV STDDEV STDDEV
STR - - STR - -
STUFF - - STUFF - -
Name USoft Oracle SQLServer ODBC JDBC, Derby
SUBSTR SUBSTR SUBSTR SUBSTR SUBSTR SUBSTR
SUBSTRB - SUBSTRB - - -
SUBSTRING SUBSTRING SUBSTRING SUBSTRING SUBSTRING SUBSTR
SUM SUM SUM SUM SUM SUM
SUSER_ID - - SUSER_ID - -
SUSER_NAME - - SUSER_NAME - -
TAN TAN TAN TAN TAN TAN
TANH - TANH - - -
TEXTPTR - - TEXTPTR - -
TEXVALID - - TEXVALID - -
Name USoft Oracle SQLServer ODBC JDBCY, Derby
TIMESTAMPADD - - TIMESTAMPADD - -
TIMESTAMPDIFF - - TIMESTAMPDIFF - -

TIMESTAMP_

TO_DATE

TIMESTAMP_

TO_DATE

TIMESTAMP_

TO_DATE

TIMESTAMP_

TO_DATE

TIMESTAMP_

TO_DATE

-
TOP RECORDS RECORDS TOP RECORDS RECORDS
TO_CHAR(datetime) DATE_TO_CHAR TO_CHAR(datetime) CONVERT(datetime) DATE_TO_CHAR TO_CHARDATE
TO_CHAR(number) NUMBERTOCHAR TO_CHAR(number) CONVERT(number) NUMBERTOCHAR NUMBERTOCHAR
TO_CHARDATE DATE_TO_CHAR TO_CHAR(datetime) CONVERT(datetime) DATE_TO_CHAR TO_CHARDATE
TO_CLOB TO_CLOB TO_CLOB CONVERT(text) TO_CLOB TO_CLOB
TO_DATE CHAR_TO_DATE TO_DATE CONVERT(text) CAST TO_DATE
  TO_DATE TO_DATE CONVERT(text) - TO_DATE
TO_INTEGER TO_INTEGER TO_NUMBER CONVERT(integer) TO_NUMBER TO_NUMBER
Name USoft Oracle SQLServer ODBC JDBCY, Derby
TO_MULTI_BYTE - TO_MULTI_BYTE - - TO_MULTI_BYTE
TO_NCHAR TO_NCHAR TO_NCHAR TO_NCHAR TO_NCHAR TO_NCHAR
TO_NCLOB - TO_NCLOB CONVERT(ntext) - TO_NCLOB
TO_NUMBER TO_INTEGER TO_NUMBER CONVERT(number) TO_NUMBER TO_NUMBER
TO_NVARCHARMAX - - TO_NVARCHARMAX - -
TRANSACTION_DATE TRANSACTION_DATE TRANSACTION_DATE TRANSACTION_DATE TRANSACTION_DATE TRANSACTION_DATE
TRANSLATE - TRANSLATE TRANSLATE - -
TRUNC TRUNC TRUNC ROUND TRUNCATE TRUNC
TRUNCATE TRUNC TRUNC ROUND TRUNCATE TRUNC
UCASE UPPER UPPER UPPER UCASE UPPER
UID - UID USER_ID - -
Name USoft Oracle SQLServer ODBC JDBCY, Derby
UPPER UPPER UPPER UPPER UCASE UPPER
USER USER USER USER USER USER
USERENV - USERENV - - USERENV
USERGROUP USERGROUP USERGROUP USERGROUP USERGROUP USERGROUP
USER_ID - UID USER_ID - -
USER_NAME - - USER_NAME - -
VARIANCE VARIANCE VARIANCE VARIANCE VARIANCE VARIANCE
VSIZE - VSIZE - - VSIZE
WEEK - - - WEEK -
YEAR YEAR YEAR YEAR YEAR YEAR
Be the first to reply!

Reply