Passing SAS Functions to SAP IQ

SAS/ACCESS Interface to SAP IQ passes the following SAS functions to SAP IQ for processing. Where the SAP IQ function name differs from the SAS function name, the SAP IQ name appears in parentheses. For more information, see Passing Functions to the DBMS Using PROC SQL.

ABS MIN
ACOS (ACOS) MINUTE
ARSIN (ASIN) MOD (see note)
ATAN MONTH
AVG QTR (QUARTER)
BYTE (CHAR) REPEAT
CEIL SECOND
COALESCE SIGN
COS SIN
COUNT SQRT
DAY STRIP (TRIM)
EXP SUBSTR (SUBSTRING)
FLOOR SUM
HOUR TAN
INDEX (LOCATE) TRANWRD (REPLACE)
LOG TRIMN (RTRIM)
LOG10 UPCASE (UPPER)
LOWCASE (LOWER) WEEKDAY (DOW)
MAX YEAR
Note: SAS does not modify non-integer arguments to the MOD function. If your DBMS does truncate non-integer arguments to MOD, then DBMS results for this function might vary from SAS results. For more information, see Functions Where Results Might Vary: MOD Function.

SQL_FUNCTIONS=ALL allows for SAS functions that have slightly different behavior from corresponding database functions that are passed down to the database. Only when SQL_FUNCTIONS=ALL can the SAS/ACCESS engine also pass these SAS SQL functions to SAP IQ. Due to incompatibility in date and time functions between SAP IQ and SAS, SAP IQ might not process them correctly. Check your results to determine whether these functions are working as expected.

COMPRESS (REPLACE) SOUNDEX
DATE (CURRENT_DATE) TIME (CURRENT_TIME)
DATEPART (DATE) TIMEPART (TIME)
DATETIME (CURRENT_TIMESTAMP) TODAY (CURRENT_DATE)
LENGTH (BYTE_LENGTH) TRIM
Last updated: February 3, 2026