Skip to content

Latest commit

 

History

History
307 lines (294 loc) · 11.6 KB

capabilities.md

File metadata and controls

307 lines (294 loc) · 11.6 KB

Capabilities

Capabilities tell the Exasol which SQL features / keywords a Virtual Schema adapter supports. If the Virtual Schema does not support a certain capability, Exasol rewrites the query without that feature. In case a Virtual Schema adapter has no capabilities at all, Exasol will rewrite all queries to SELECT * FROM table. That means, that it will always load the whole remote table, even if only a single row is requested.So, for optimizing your performance, make sure that at least all functions that you use in the WHERE clause of your queries are supported by the Virtual Schema adapter.

Main Capabilities

Capability Supported
SELECTLIST_PROJECTION
SELECTLIST_EXPRESSIONS
FILTER_EXPRESSIONS
AGGREGATE_SINGLE_GROUP
AGGREGATE_GROUP_BY_COLUMN
AGGREGATE_GROUP_BY_EXPRESSION
AGGREGATE_GROUP_BY_TUPLE
AGGREGATE_HAVING
ORDER_BY_COLUMN
ORDER_BY_EXPRESSION
LIMIT
LIMIT_WITH_OFFSET
JOIN
JOIN_TYPE_INNER
JOIN_TYPE_LEFT_OUTER
JOIN_TYPE_RIGHT_OUTER
JOIN_TYPE_FULL_OUTER
JOIN_CONDITION_EQUI
JOIN_CONDITION_ALL

Supported Literals

Literal Supported
NULL
BOOL
DATE
TIMESTAMP
TIMESTAMP_UTC
DOUBLE
EXACTNUMERIC
STRING
INTERVAL

Supported Predicates

Predicate Supported
AND
OR
NOT
EQUAL
NOTEQUAL
LESS
LESSEQUAL
LIKE
LIKE_ESCAPE
REGEXP_LIKE
BETWEEN
IN_CONSTLIST
IS_NULL
IS_NOT_NULL
IS_JSON
IS_NOT_JSON

Supported Aggregate Functions

Aggregate Function Supported
COUNT
COUNT_STAR
COUNT_DISTINCT
COUNT_TUPLE
SUM
SUM_DISTINCT
MIN
MAX
AVG
AVG_DISTINCT
MEDIAN
FIRST_VALUE
LAST_VALUE
STDDEV
STDDEV_DISTINCT
STDDEV_POP
STDDEV_POP_DISTINCT
STDDEV_SAMP
STDDEV_SAMP_DISTINCT
VARIANCE
VARIANCE_DISTINCT
VAR_POP
VAR_POP_DISTINCT
VAR_SAMP
VAR_SAMP_DISTINCT
GROUP_CONCAT
GROUP_CONCAT_DISTINCT
GROUP_CONCAT_SEPARATOR
GROUP_CONCAT_ORDER_BY
GEO_INTERSECTION_AGGREGATE
GEO_UNION_AGGREGATE
ST_INTERSECTION
ST_UNION
APPROXIMATE_COUNT_DISTINCT
MUL
MUL_DISTINCT
EVERY
SOME
LISTAGG
LISTAGG_DISTINCT
LISTAGG_SEPARATOR
LISTAGG_ON_OVERFLOW_ERROR
LISTAGG_ON_OVERFLOW_TRUNCATE
LISTAGG_ORDER_BY

Supported Scalar Functions

Scalar Function Supported
ADD
SUB
MULT
FLOAT_DIV
NEG
ABS
ACOS
ASIN
ATAN
ATAN2
CEIL
COS
COSH
COT
DEGREES
DIV
EXP
FLOOR
GREATEST
LEAST
LN
LOG
MOD
POWER
RADIANS
RAND
ROUND
SIGN
SIN
SINH
SQRT
TAN
TANH
TRUNC
ASCII
BIT_LENGTH
CHR
COLOGNE_PHONETIC
CONCAT
DUMP
EDIT_DISTANCE
INITCAP
INSERT
INSTR
LENGTH
LOCATE
LOWER
LPAD
LTRIM
OCTET_LENGTH
REGEXP_INSTR
REGEXP_REPLACE
REGEXP_SUBSTR
REPEAT
REPLACE
REVERSE
RIGHT
RPAD
RTRIM
SOUNDEX
SPACE
SUBSTR
TRANSLATE
TRIM
UNICODE
UNICODECHR
UPPER
ADD_DAYS
ADD_HOURS
ADD_MINUTES
ADD_MONTHS
ADD_SECONDS
ADD_WEEKS
ADD_YEARS
CONVERT_TZ
CURRENT_DATE
CURRENT_TIMESTAMP
DATE_TRUNC
DAY
DAYS_BETWEEN
DBTIMEZONE
EXTRACT
FROM_POSIX_TIME
HOUR
HOURS_BETWEEN
LOCALTIMESTAMP
MINUTE
MINUTES_BETWEEN
MONTH
MONTHS_BETWEEN
NUMTODSINTERVAL
NUMTOYMINTERVAL
POSIX_TIME
SECOND
SECONDS_BETWEEN
SESSIONTIMEZONE
SYSDATE
SYSTIMESTAMP
WEEK
YEAR
YEARS_BETWEEN
ST_X
ST_Y
ST_ENDPOINT
ST_ISCLOSED
ST_ISRING
ST_LENGTH
ST_NUMPOINTS
ST_POINTN
ST_STARTPOINT
ST_AREA
ST_EXTERIORRING
ST_INTERIORRINGN
ST_NUMINTERIORRINGS
ST_GEOMETRYN
ST_NUMGEOMETRIES
ST_BOUNDARY
ST_BUFFER
ST_CENTROID
ST_CONTAINS
ST_CONVEXHULL
ST_CROSSES
ST_DIFFERENCE
ST_DIMENSION
ST_DISJOINT
ST_DISTANCE
ST_ENVELOPE
ST_EQUALS
ST_FORCE2D
ST_GEOMETRYTYPE
ST_INTERSECTION
ST_INTERSECTS
ST_ISEMPTY
ST_ISSIMPLE
ST_OVERLAPS
ST_SETSRID
ST_SYMDIFFERENCE
ST_TOUCHES
ST_TRANSFORM
ST_UNION
ST_WITHIN
CAST
IS_NUMBER
IS_BOOLEAN
IS_DATE
IS_DSINTERVAL
IS_YMINTERVAL
IS_TIMESTAMP
TO_CHAR
TO_DATE
TO_DSINTERVAL
TO_YMINTERVAL
TO_NUMBER
TO_TIMESTAMP
BIT_AND
BIT_CHECK
BIT_LROTATE
BIT_LSHIFT
BIT_NOT
BIT_OR
BIT_RROTATE
BIT_RSHIFT
BIT_SET
BIT_TO_NUM
BIT_XOR
CASE
CURRENT_SCHEMA
CURRENT_SESSION
CURRENT_STATEMENT
CURRENT_USER
HASH_MD5
HASHTYPE_MD5
HASH_SHA1
HASHTYPE_SHA1
HASH_SHA256
HASHTYPE_SHA256
HASH_SHA512
HASHTYPE_SHA512
HASH_TIGER
HASHTYPE_TIGER
NULLIFZERO
SYS_GUID
ZEROIFNULL
JSON_VALUE
SESSION_PARAMETER
MIN_SCALE
TYPEOF
CURRENT_CLUSTER