Link Search Menu Expand Document

Поддержка SQL

В SELECT-запросах к данным можно использовать функции, описанные в таблице ниже.

СУБД хранилища имеют ограничения на использование некоторых функций в запросах, вызванные особенностями этих СУБД. Наиболее полный синтаксис запросов доступен в ADB.

Функция Доступна в ADB Доступна в ADQM Доступна в ADG
ABS + + +
ACOS + + −
ASIN + + −
ATAN + + −
ATAN2 + − −
AVG − − −
BIT_AND + − −
BIT_OR + − −
CASE + + +
CAST + + +
CBRT + − −
CEIL +
аргумент FLOAT
+ −
CEILING +
аргумент FLOAT
+ −
CHAR − − −
COALESCE + + +
COS + + −
COUNT + + +
CROSS JOIN + − +
DEGREES + − −
EXCEPT − − −
EXP + + −
FLOOR +
аргумент FLOAT
+ −
FULL JOIN + − −
GREATEST − − −
HEX − − −
IFNULL − − −
INTERSECT − − −
JOIN для трех таблиц + − +
JOIN с подзапросом + − +
LEAST − − −
LENGTH − − −
LIKELY − − −
LN + + −
LOG − − −
LOWER + + +
MAX + + +
MIN + + +
MOD + − −
NULLIF + + +
OCTET_LENGTH − − −
PI − − −
POSITION + − −
POWER + + −
PRINTF − − −
QUOTE − − −
RADIANS + − −
RANDOM − − −
REPLACE + + +
RIGHT JOIN + + −
ROUND +
аргумент FLOAT
+ −
SIGN +
аргумент FLOAT
− −
SIN + + −
SQRT + + −
SUBSTRING + + −
SUM + + +
TAN + + −
TRIM + + +
TRUNC − − −
TYPEOF − − −
UNION − − −
UPPER + + +

Примеры неподдерживаемых запросов

AVG

SELECT AVG(product_units) FROM sales.sales

CROSS JOIN

SELECT *
FROM sales.sales AS s
CROSS JOIN sales.stores AS st
ORDER BY s.store_id, st.category
LIMIT 5
DATASOURCE_TYPE = 'ADQM'

FULL JOIN

SELECT *
FROM sales.sales AS s
FULL JOIN sales.stores AS st
ON s.store_id = st.identification_number
ORDER BY s.store_id
LIMIT 5
DATASOURCE_TYPE = 'ADG'

JOIN для трех таблиц

SELECT *
FROM demo.territories AS t
LEFT JOIN demo.employee_territories AS et
ON t.territory_id = et.territory_id
LEFT JOIN demo.employees AS e
ON t.territory_id = e.territory_id
WHERE e.last_name is NOT NULL
ORDER BY t.territory_id
DATASOURCE_TYPE = 'ADQM'

JOIN с подзапросом

SELECT *
FROM sales.sales AS s
INNER JOIN
(SELECT * FROM sales.stores) AS st
ON s.store_id = st.identification_number
ORDER BY s.store_id
DATASOURCE_TYPE = 'ADQM'

RIGHT JOIN

SELECT *
FROM sales.sales AS s
RIGHT JOIN sales.stores AS st
ON s.store_id = st.identification_number
ORDER BY st.identification_number
LIMIT 5
DATASOURCE_TYPE = 'ADG'