Функции
Синтаксис функций
Цепочки функций через оператор точки
DuckDB поддерживает точечный синтаксис для цепочек функций. Это позволяет переписать вызов функции fn(arg1, arg2, arg3, ...) как arg1.fn(arg2, arg3, ...). Например, возьмём следующее использование функции replace function:
SELECT replace(goose_name, 'goose', 'duck') AS duck_name FROM unnest(['African goose', 'Faroese goose', 'Hungarian goose', 'Pomeranian goose']) breed(goose_name);
Это можно переписать следующим образом:
SELECT goose_name.replace('goose', 'duck') AS duck_name
FROM unnest(['African goose', 'Faroese goose', 'Hungarian goose', 'Pomeranian goose']) breed(goose_name); Функции запросов
Таблица функций duckdb_functions() показывает список функций, в настоящее время встроенных в систему.
SELECT DISTINCT ON(function_name)
function_name,
function_type,
return_type,
parameters,
parameter_types,
description
FROM duckdb_functions()
WHERE function_type = 'scalar'
AND function_name LIKE 'b%'
ORDER BY function_name; | function_name | function_type | return_type | parameters | parameter_types | description |
|---|---|---|---|---|---|
| bar | scalar | VARCHAR | [x, min, max, width] | [DOUBLE, DOUBLE, DOUBLE, DOUBLE] | Рисует полосу, ширина которой пропорциональна (x - min) и равна width символам, когда x = max. width по умолчанию равно 80 |
| base64 | scalar | VARCHAR | [blob] | [BLOB] | Преобразует blob в строку, закодированную в base64 |
| bin | scalar | VARCHAR | [value] | [VARCHAR] | Преобразует значение в двоичное представление |
| bit_count | scalar | TINYINT | [x] | [TINYINT] | Возвращает количество установленных битов |
| bit_length | scalar | BIGINT | [col0] | [VARCHAR] | NULL |
| bit_position | scalar | INTEGER | [substring, bitstring] | [BIT, BIT] | Возвращает первый начальный индекс указанной подстроки в битах или ноль, если она отсутствует. Первый (крайний левый) бит имеет индекс 1 |
| bitstring | scalar | BIT | [bitstring, length] | [VARCHAR, INTEGER] | Добавляет пробелы к bitstring до указанной длины |
В настоящее время описание и имена параметров функций недоступны в функции
duckdb_functions().
Страницы в этом разделе
© Copyright 2018–2024 Stichting DuckDB Foundation
Licensed under the MIT License.
https://duckdb.org/docs/sql/functions/overview.html