Microsoft Access SQL поддерживает использование определенного синтаксиса ODBC для скалярных функций в сквозном запросе, который выполняется в Microsoft SQL Server. Например, чтобы вернуть все строки, в которых абсолютное значение изменения цены акций больше пяти, используйте следующий запрос:
SELECT DailyClose, DailyChange FROM DailyQuote
WHERE {fn ABS(DailyChange)} > 5
Описание аргументов и полное объяснение escape-синтаксиса для включения функций в инструкцию SQL см. в разделе Скалярные функции.
Скалярные функции ODBC по категориям
Поддерживается подмножество текстовых функций. В следующей таблице перечислены скалярные функции ODBC и эквивалентные функции Access, если таковые есть.
|
Функция ODBC (версия ODBC) |
Функция Access |
|
ASCII (ODBC 1.0) |
|
|
BIT_LENGTH (3.0) |
(Нет эквивалента) |
|
CHAR ( ODBC 1.0) |
|
|
CONCAT ( ODBC 1.0) |
(Используйте оператор объединения символов амперсанда (&)) |
|
РАЗНИЦА ( ODBC 2.0) |
(Нет эквивалента) |
|
INSERT (ODBC 1.0) |
(Нет эквивалента) |
|
LCASE ( ODBC 1.0) |
|
|
LEFT (ODBC 1.0) |
|
|
LENGTH (ODBC 1.0) |
|
|
LOCATE (ODBC 1.0) |
|
|
LTRIM ( ODBC 1.0) |
|
|
OCTET_LENGTH ( ODBC 3.0) (нет эквивалентной функции) |
(Нет эквивалента) |
|
POSITION (ODBC 3.0) |
|
|
REPEAT (ODBC 1.0) |
|
|
REPLACE ( ODBC 1.0) |
|
|
RIGHT (ODBC 1.0) |
|
|
RTRIM ( ODBC 1.0) |
|
|
SOUNDEX ( ODBC 2.0) |
(Нет эквивалента) |
|
ПРОБЕЛ ( ODBC 2.0) |
|
|
ПОДСТРОКА ( ODBC 1.0) |
|
|
UCASE ( ODBC 1.0) |
Поддерживается подмножество математических функций. В следующей таблице перечислены скалярные функции ODBC и эквивалентные функции Access, если таковые есть.
|
Функция ODBC (версия ODBC) |
Функция Access |
|
ABS (ODBC 1.0) |
|
|
ACOS (ODBC 1.0) |
(Нет эквивалента) |
|
ASIN (ODBC 1.0) |
(Нет эквивалента) |
|
CEILING (ODBC 1.0) |
(Нет эквивалента) |
|
ATAN (ODBC 1.0) |
|
|
ATAN2 (ODBC 2.0) |
(Нет эквивалента) |
|
COS (ODBC 1.0) |
|
|
COT (ODBC 1.0) |
(Нет эквивалента) |
|
DEGREES (ODBC 2.0) |
(Нет эквивалента) |
|
EXP (ODBC 1.0) |
|
|
FLOOR (ODBC 1.0) |
(Нет эквивалента) |
|
MOD (ODBC 1.0) |
(Используйте оператор MOD) |
|
LOG (ODBC 1.0) |
|
|
LOG10 (ODBC 2.0) |
(Нет эквивалента) |
|
PI (ODBC 1.0) |
(Нет эквивалента) |
|
POWER (ODBC 2.0) |
(Нет эквивалента) |
|
RADIANS (ODBC 2.0) |
(Нет эквивалента) |
|
RAND (ODBC 1.0) |
|
|
ROUND (ODBC 2.0) |
|
|
SIGN (ODBC 1.0) |
|
|
SIN (ODBC 1.0) |
|
|
SQRT (ODBC 1.0) |
|
|
TAN (ODBC 1.0) |
|
|
TRUNCATE (ODBC 2.0) |
(Нет эквивалента) |
Поддерживается подмножество функций даты и времени. В следующей таблице перечислены скалярные функции ODBC и эквивалентные функции Access, если таковые есть.
|
Функция ODBC (версия ODBC) |
Функция Access |
|
CURDATE (ODBC 1.0) |
|
|
CURTIME (ODBC 1.0) |
|
|
CURRENT_DATE (ODBC 3.0) |
|
|
CURRENT_TIME (ODBC 3.0) |
|
|
CURRENT_TIMESTAMP (ODBC 3.0) |
|
|
DAYNAME (ODBC 2.0) |
|
|
DAYOFMONTH (ODBC 1.0) |
|
|
DAYOFWEEK (ODBC 1.0) |
|
|
DAYOFYEAR (ODBC 1.0) |
|
|
EXTRACT (ODBC 3.0) |
|
|
HOUR (ODBC 1.0) |
|
|
MINUTE (ODBC 1.0) |
|
|
MONTH (ODBC 1.0) |
|
|
MONTHNAME (ODBC 2.0) |
|
|
NOW (ODBC 1.0) |
|
|
QUARTER (ODBC 1.0) |
|
|
SECOND (ODBC 1.0) |
|
|
TIMESTAMPADD (ODBC 2.0) |
|
|
TIMESTAMPDIFF (ODBC 2.0) |
|
|
НЕДЕЛЯ (ODBC 1.0) |
|
|
YEAR (ODBC 1.0) |
Поддерживается подмножество функций преобразования. В следующей таблице перечислены скалярные функции ODBC и эквивалентные функции Access, если таковые есть.
|
Функция ODBC |
Функция Access |
|
CONVERT |
Примечание. Строковые литералы можно преобразовать в значения следующих типов: SQL_FLOAT, SQL_DOUBLE, SQL_NUMERIC, SQL_INTEGER, SQL_REAL, SQL_SMALLINT, SQL_VARCHAR и SQL_DATETIME. Чтобы преобразовать строку в валюту, используйте SQL_FLOAT. Дополнительные сведения см. в разделе Явная функция преобразования типов данных.