Справка по функциям калькулятора полей QGIS: различия между версиями
Bolotoved (обсуждение | вклад) |
Petruxin (обсуждение | вклад) |
||
(не показано 18 промежуточных версий 3 участников) | |||
Строка 86: | Строка 86: | ||
12345 % 10000 --> 2345 | 12345 % 10000 --> 2345 | ||
Выбрать из некоторого количества объектов, объекты с характеристикой кратной 50 по атрибуту ELEV: | |||
"ELEV" % 50 = 0 или NOT("ELEV" % 50) | |||
=== <span style="color:blue">Оператор ^</span> === | === <span style="color:blue">Оператор ^</span> === | ||
Строка 122: | Строка 126: | ||
=== <span style="color:blue">Оператор ></span> === | === <span style="color:blue">Оператор ></span> === | ||
Оператор "больше". | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
Строка 127: | Строка 133: | ||
Синтаксис зависит от задач. | Синтаксис зависит от задач. | ||
В случае, если нам нужно проверить справедливость выражения (если выражение верно, возвращается 1, если нет — 0): | |||
a < b | a < b | ||
Строка 133: | Строка 139: | ||
Ниже приводится пример синтаксиса для построения условного выражения: | Ниже приводится пример синтаксиса для построения условного выражения: | ||
CASE WHEN a < 300 | CASE WHEN a < 300 THEN m ELSE n END | ||
THEN m | |||
ELSE n END | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
a,b -> целочисленные или дробные значения | a,b -> целочисленные или дробные значения. | ||
m,n -> численные или строковые значения. | m,n -> численные или строковые значения. | ||
Строка 146: | Строка 150: | ||
Нижеследующее условное выражение возвращает значение "маленький" в случае, если значение поля "Количество" < 300 и "большой", в противном случае, возвращается значение "большой". | Нижеследующее условное выражение возвращает значение "маленький" в случае, если значение поля "Количество" < 300 и "большой", в противном случае, возвращается значение "большой". | ||
CASE WHEN "Количество" < 300 | CASE WHEN "Количество" < 300 THEN 'маленький' ELSE 'большой' END | ||
THEN 'маленький' | |||
ELSE 'большой' END | |||
=== <span style="color:blue">Оператор <</span> === | === <span style="color:blue">Оператор <</span> === | ||
Строка 202: | Строка 204: | ||
=== <span style="color:blue">Оператор LIKE</span> === | === <span style="color:blue">Оператор LIKE</span> === | ||
Оператор для поиска значений по образцу с учетом регистра. | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
CASE WHEN a LIKE b THEN c ELSE d END | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
a, c, d - числа, строки или поля. b - образец. В качестве образца может быть задано как жестко фиксированное выражение, так и маска, например, '%ся' - маска для отбора значений поля любой длины, оканчивающихся на "ся" (Вася, Маруся и т.д.). Нижнее подчеркивание "_" используется для обозначения в маске одного знака, например, маска '__ся' отберет все слова оканчивающиеся на "ся" и имеющие длину в 4 символа. | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
Выражение, возвращающее значение "город", если значение поля "Населенный пункт" начинается с "г.", в противном случае, возвращает значение "поселок". | |||
CASE WHEN "Населенный пункт" LIKE 'г.%' THEN 'город' ELSE 'поселок' END | |||
=== <span style="color:blue">Оператор ILIKE</span> === | === <span style="color:blue">Оператор ILIKE</span> === | ||
Оператор для поиска значений по образцу без учета регистра. | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
CASE WHEN a ILIKE b THEN c ELSE d END | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
a, c, d - числа, строки или поля. b - образец. В качестве образца может быть задано как жестко фиксированное выражение, так и маска, например, '%ся' - маска для отбора значений поля любой длины, оканчивающихся на "ся" (Вася, Маруся и т.д.). Нижнее подчеркивание "_" используется для обозначения в маске одного знака, например, маска '__ся' отберет все слова оканчивающиеся на "ся" и имеющие длину в 4 символа. | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
Выражение, возвращающее значение "город", если значение поля "Населенный пункт" начинается с "г.", в противном случае, возвращает значение "поселок". | |||
CASE WHEN "Населенный пункт" ILIKE 'г.%' THEN 'город' ELSE 'поселок' END | |||
=== <span style="color:blue">Оператор IS</span> === | === <span style="color:blue">Оператор IS</span> === | ||
Строка 227: | Строка 248: | ||
=== <span style="color:blue">Оператор OR</span> === | === <span style="color:blue">Оператор OR</span> === | ||
Условный оператор, отбирающий значения, которые удовлетворяют хотя бы одному условию из перечня. | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
Строка 235: | Строка 258: | ||
=== <span style="color:blue">Оператор AND</span> === | === <span style="color:blue">Оператор AND</span> === | ||
Условный оператор, отбирающий такие значения, которые удовлетворяют двум (или более) условиям. | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
CASE WHEN a оператор сравнения b AND c оператор сравнения d THEN n ELSE m END | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
a,b,c,d,n,m - числовые и строковые значения. В качестве операторов сравнения могут выступать: =,>,<,<>,<=,>=, LIKE. | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
С помощью данного выражения все значения поля "Размер" разбиваются на три класса: малый (от 0 до 15 включительно), средний (от 16 до 30 включительно), и крупный (более 30). | |||
CASE WHEN "Размер" >= '0' AND "Размер" <= '15' THEN 'малый' | |||
WHEN "Размер" >= '16' AND "Размер" <= '30' THEN 'средний' | |||
WHEN "Размер" > '30' THEN 'крупный' | |||
END | |||
=== <span style="color:blue">Оператор NOT</span> === | === <span style="color:blue">Оператор NOT</span> === | ||
Строка 253: | Строка 289: | ||
Математические функции, такие как квадратный корень, sin и cos. | Математические функции, такие как квадратный корень, sin и cos. | ||
=== <span style="color:blue">Функция sqrt</span> === | === <span style="color:blue">Функция sqrt()</span> === | ||
Квадратный корень | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
sqrt(a) | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
a -> значение числового поля | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция sin</span> === | sqrt("fiel_name1") | ||
=== <span style="color:blue">Функция sin()</span> === | |||
Синус | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
sin(a) | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
a -> значение числового поля, выраженное в радианах. | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция cos</span> === | sin(3.14159265358979/6) --> 0.5 | ||
=== <span style="color:blue">Функция cos()</span> === | |||
Косинус | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
cos(a) | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
a -> значение числового поля, выраженное в радианах. | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция tan</span> === | cos(0) --> 1 | ||
=== <span style="color:blue">Функция tan()</span> === | |||
Тангенс | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
tan(a) | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
a -> значение числового поля, выраженное в радианах. | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция asin</span> === | tan(3.141592653589793/4)) --> 1 | ||
=== <span style="color:blue">Функция asin()</span> === | |||
Арксинус | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
Строка 293: | Строка 363: | ||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция acos</span> === | === <span style="color:blue">Функция acos()</span> === | ||
Арккосинус | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
Строка 301: | Строка 373: | ||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция atan</span> === | === <span style="color:blue">Функция atan()</span> === | ||
Арктангенс | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
Строка 309: | Строка 383: | ||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция atan2</span> === | |||
=== <span style="color:blue">Функция atan2()</span> === | |||
Арктангенс y/x использующий знаки двух аргументов для определения квадранта результата. | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
atan2(y,x) | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
x,y -> значение числового поля, выраженное в радианах. | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция exp</span> === | atan2("field_name1"/"field_name2") | ||
=== <span style="color:blue">Функция exp()</span> === | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
Строка 325: | Строка 409: | ||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция ln</span> === | === <span style="color:blue">Функция ln()</span> === | ||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
Строка 333: | Строка 417: | ||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция log10</span> === | === <span style="color:blue">Функция log10()</span> === | ||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
Строка 341: | Строка 425: | ||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция log</span> === | === <span style="color:blue">Функция log()</span> === | ||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
Строка 352: | Строка 436: | ||
Функции для преобразования одного типа данных в другой, например для преобразования строковых данных в числовые, числовых в строковые. | Функции для преобразования одного типа данных в другой, например для преобразования строковых данных в числовые, числовых в строковые. | ||
=== <span style="color:blue">Функция toint</span> === | === <span style="color:blue">Функция toint ()</span> === | ||
Преобразует десятичные числа в целые. | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
toint (a) | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
a -> десятичное число (real). | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
toint (123.456) -> 123 | |||
=== <span style="color:blue">Функция toreal</span> === | === <span style="color:blue">Функция toreal</span> === | ||
Строка 368: | Строка 460: | ||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
=== <span style="color:blue">Функция tostring</span> === | === <span style="color:blue">Функция tostring ()</span> === | ||
Преобразует числовые данные в строковые. | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
tostring (a) | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
a -> числовое поле (целочисленное или дробное) | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
tostring ("fild_name1") | |||
== Строковые == | == Строковые == | ||
Строка 602: | Строка 701: | ||
=== <span style="color:blue">Функция $rownum</span> === | === <span style="color:blue">Функция $rownum</span> === | ||
Функция для автоматической нумерации строк. | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
$rownum | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
Нет аргументов. | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
$rownum -> 1,2,3... номер строки возвращается начиная с 1. | |||
Таким образом для нумерации строк нужно зайти в калькулятор полей, поставить галочку на "Обновить существующее поле", выбрать соответствующее поле и в окне "Выражение" написать "$rownum", нажать ОК. | |||
=== <span style="color:blue">Функция $id</span> === | === <span style="color:blue">Функция $id</span> === | ||
Функция для автоматического присвоения идентификаторов (ID) объектов. | |||
<span style="color:blue">Синтаксис</span> | <span style="color:blue">Синтаксис</span> | ||
$id | |||
<span style="color:blue">Аргументы</span> | <span style="color:blue">Аргументы</span> | ||
Нет аргументов. | |||
<span style="color:blue">Пример</span> | <span style="color:blue">Пример</span> | ||
$id -> 0,1,2,3... (нумерация начинается с 0). | |||
== Поля и значения == | == Поля и значения == | ||
Строка 1094: | Строка 1210: | ||
=== <span style="color:blue">$perimeter function</span> === | === <span style="color:blue">$perimeter function</span> === | ||
Возвращает периметр полигона. Attention! <span style="color:red">Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.</span> | |||
<span style="color:blue"> | <span style="color:blue">Синтаксис</span> | ||
$perimeter | $perimeter | ||
<span style="color:blue"> | <span style="color:blue">Аргументы</span> | ||
Аргументов нет. | |||
<span style="color:blue"> | <span style="color:blue">Пример</span> | ||
$perimeter -> | $perimeter -> метры (полигональный слой должен быть в прямоугольной проекции). | ||
=== <span style="color:blue">$x function</span> === | === <span style="color:blue">$x function</span> === |
Текущая версия от 13:52, 4 ноября 2013
Справка по функциям калькулятора полей QGIS
Список функций
Операторы
Оператор +
Возвращает сумму значений полей
Синтаксис
a + b
Аргументы
a, b -> числа или поля содержащие целочисленные или десятичные значения
Пример
"field_name1" + "field_name2"
Оператор -
Возвращает разность значений полей
Синтаксис
a - b
Аргументы
a, b -> числа или поля содержащие целочисленные или десятичные значения
Пример
"field_name1" - "field_name2"
Оператор *
Возвращает произведение значений полей
Синтаксис
a * b
Аргументы
a, b -> числа или поля содержащие целочисленные или десятичные значения
Пример
"field_name1" * "field_name2"
Оператор /
Возвращает частное значений полей
Синтаксис
a / b
Аргументы
a, b -> числа или поля содержащие целочисленные или десятичные значения
Пример
"field_name1" / "field_name2"
Оператор %
Деление по модулю - возвращает остаток от деления одного целого числа на другое целое число.
Синтаксис
a % b
Аргументы
a, b -> целые числа.
Пример
12345 % 10000 --> 2345
Выбрать из некоторого количества объектов, объекты с характеристикой кратной 50 по атрибуту ELEV:
"ELEV" % 50 = 0 или NOT("ELEV" % 50)
Оператор ^
Возвращает результат возведения числа a в степень b.
Синтаксис
a ^ b
Аргументы
a, b -> числа или поля содержащие целочисленные или десятичные значения
Пример
"field_name1" ^ 2
"field_name1" ^ "field_name2"
Оператор =
Знак равенства
Синтаксис
a = b
Аргументы
a,b -> Значения полей
Пример
"field_name1" = "field_name2" --> В случае, если выражение верно, возвращает 1, в случае, если неверно — 0.
Оператор >
Оператор "больше".
Синтаксис
Синтаксис зависит от задач.
В случае, если нам нужно проверить справедливость выражения (если выражение верно, возвращается 1, если нет — 0):
a < b
Ниже приводится пример синтаксиса для построения условного выражения:
CASE WHEN a < 300 THEN m ELSE n END
Аргументы
a,b -> целочисленные или дробные значения. m,n -> численные или строковые значения.
Пример
Нижеследующее условное выражение возвращает значение "маленький" в случае, если значение поля "Количество" < 300 и "большой", в противном случае, возвращается значение "большой".
CASE WHEN "Количество" < 300 THEN 'маленький' ELSE 'большой' END
Оператор <
Синтаксис
Аргументы
Пример
Оператор <>
Синтаксис
Аргументы
Пример
Оператор <=
Синтаксис
Аргументы
Пример
Оператор >=
Синтаксис
Аргументы
Пример
Оператор ||
Оператор конкатенации: объединяет выражения из разных полей.
Синтаксис
a || b
Аргументы
a,b -> числовые и строковые выражения.
Пример
'Васисуалий' || ' ' || 'Лоханкин -> Васисуалий Лоханкин
Оператор LIKE
Оператор для поиска значений по образцу с учетом регистра.
Синтаксис
CASE WHEN a LIKE b THEN c ELSE d END
Аргументы
a, c, d - числа, строки или поля. b - образец. В качестве образца может быть задано как жестко фиксированное выражение, так и маска, например, '%ся' - маска для отбора значений поля любой длины, оканчивающихся на "ся" (Вася, Маруся и т.д.). Нижнее подчеркивание "_" используется для обозначения в маске одного знака, например, маска '__ся' отберет все слова оканчивающиеся на "ся" и имеющие длину в 4 символа.
Пример
Выражение, возвращающее значение "город", если значение поля "Населенный пункт" начинается с "г.", в противном случае, возвращает значение "поселок".
CASE WHEN "Населенный пункт" LIKE 'г.%' THEN 'город' ELSE 'поселок' END
Оператор ILIKE
Оператор для поиска значений по образцу без учета регистра.
Синтаксис
CASE WHEN a ILIKE b THEN c ELSE d END
Аргументы
a, c, d - числа, строки или поля. b - образец. В качестве образца может быть задано как жестко фиксированное выражение, так и маска, например, '%ся' - маска для отбора значений поля любой длины, оканчивающихся на "ся" (Вася, Маруся и т.д.). Нижнее подчеркивание "_" используется для обозначения в маске одного знака, например, маска '__ся' отберет все слова оканчивающиеся на "ся" и имеющие длину в 4 символа.
Пример
Выражение, возвращающее значение "город", если значение поля "Населенный пункт" начинается с "г.", в противном случае, возвращает значение "поселок".
CASE WHEN "Населенный пункт" ILIKE 'г.%' THEN 'город' ELSE 'поселок' END
Оператор IS
Синтаксис
Аргументы
Пример
Оператор OR
Условный оператор, отбирающий значения, которые удовлетворяют хотя бы одному условию из перечня.
Синтаксис
Аргументы
Пример
Оператор AND
Условный оператор, отбирающий такие значения, которые удовлетворяют двум (или более) условиям.
Синтаксис
CASE WHEN a оператор сравнения b AND c оператор сравнения d THEN n ELSE m END
Аргументы
a,b,c,d,n,m - числовые и строковые значения. В качестве операторов сравнения могут выступать: =,>,<,<>,<=,>=, LIKE.
Пример
С помощью данного выражения все значения поля "Размер" разбиваются на три класса: малый (от 0 до 15 включительно), средний (от 16 до 30 включительно), и крупный (более 30).
CASE WHEN "Размер" >= '0' AND "Размер" <= '15' THEN 'малый' WHEN "Размер" >= '16' AND "Размер" <= '30' THEN 'средний' WHEN "Размер" > '30' THEN 'крупный' END
Оператор NOT
Синтаксис
Аргументы
Пример
Математические
Математические функции, такие как квадратный корень, sin и cos.
Функция sqrt()
Квадратный корень
Синтаксис
sqrt(a)
Аргументы
a -> значение числового поля
Пример
sqrt("fiel_name1")
Функция sin()
Синус
Синтаксис
sin(a)
Аргументы
a -> значение числового поля, выраженное в радианах.
Пример
sin(3.14159265358979/6) --> 0.5
Функция cos()
Косинус
Синтаксис
cos(a)
Аргументы
a -> значение числового поля, выраженное в радианах.
Пример
cos(0) --> 1
Функция tan()
Тангенс
Синтаксис
tan(a)
Аргументы
a -> значение числового поля, выраженное в радианах.
Пример
tan(3.141592653589793/4)) --> 1
Функция asin()
Арксинус
Синтаксис
Аргументы
Пример
Функция acos()
Арккосинус
Синтаксис
Аргументы
Пример
Функция atan()
Арктангенс
Синтаксис
Аргументы
Пример
Функция atan2()
Арктангенс y/x использующий знаки двух аргументов для определения квадранта результата.
Синтаксис
atan2(y,x)
Аргументы
x,y -> значение числового поля, выраженное в радианах.
Пример
atan2("field_name1"/"field_name2")
Функция exp()
Синтаксис
Аргументы
Пример
Функция ln()
Синтаксис
Аргументы
Пример
Функция log10()
Синтаксис
Аргументы
Пример
Функция log()
Синтаксис
Аргументы
Пример
Преобразования
Функции для преобразования одного типа данных в другой, например для преобразования строковых данных в числовые, числовых в строковые.
Функция toint ()
Преобразует десятичные числа в целые.
Синтаксис
toint (a)
Аргументы
a -> десятичное число (real).
Пример
toint (123.456) -> 123
Функция toreal
Синтаксис
Аргументы
Пример
Функция tostring ()
Преобразует числовые данные в строковые.
Синтаксис
tostring (a)
Аргументы
a -> числовое поле (целочисленное или дробное)
Пример
tostring ("fild_name1")
Строковые
Функции для работы со строковыми данными, например замена или преобразование в верхний регистр.
Функция lower()
Преобразует текстовую строку в нижний регистр.
Синтаксис
lower(string)
Аргументы
string -> текстовая строка. Строка, регистр которой необходимо понизить.
Пример
lower('HELLO World') -> 'hello world'
Функция upper()
Преобразует текстовую строку в верхний регистр.
Синтаксис
upper(string)
Аргументы
string -> текстовая строка. Строка, регистр которой необходимо повысить.
Пример
upper('hello WOrld') -> 'HELLO WORLD'
Функция length()
Возвращает длину строки.
Синтаксис
length(string)
Аргументы
string -> текстовая строка. Строка, длину которой необходимо измерить.
Пример
length('HELLO') -> 5
Функция replace()
Возвращает тестовую строку с определенными заменами.
Синтаксис
replace(string,before,after)
Аргументы
string -> строка. Исходная строка.
before -> строка. Заменяемая часть строки.
after -> строка. Заменяющая часть строки.
Пример
replace('QGIS SHOULD ROCK','SHOULD','DOES') -> 'QGIS DOES ROCK'
Функция regexp_replace
Синтаксис
Аргументы
Пример
Функция substr()
Возвращает определенную часть строки.
Синтаксис
substr(string,startpos,length)
Аргументы
string -> строка. Исходная полная строка.
startpos -> число. Стартовая позиция откуда следует начинать экстракцию.
length -> is number. Длина экстрагируемой строки.
Пример
substr('HELLO WORLD',3,5) -> 'LLO W'
Геометрические
Функции для операций с геометрией объектов, например для расчета длин и площадей.
Функция xat()
Возвращает координату X (долготу) n-ой точки линии.
Синтаксис
xat(n)
Аргументы
n - целое число, номер n-ой точки линии (индекс начинается с 0; отрицательные значения отсчитываются от последнего значения индекса).
Пример
xat(1) -> градусы, в случае, если полилиния находится в географической системе координат
xat(1) -> метры, в случае, если полилиния в прямоугольной проекции.
Функция yat()
Возвращает координату Y (широту) n-ой точки линии.
Синтаксис
yat(n)
Аргументы
n - целое число, номер n-ой точки линии (индекс начинается с 0; отрицательные значения отсчитываются от последнего значения индекса).
Пример
yat(1) -> градусы, в случае, если полилиния находится в географической системе координат
yat(1) -> метры, в случае, если полилиния в прямоугольной проекции.
Функция $area
Возвращает площадь полигона. Внимание! Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.
Синтаксис
$area
Аргументы
Нет аргументов.
Примеры
$area -> метры, полигональный слой должен быть в прямоугольной проекции.
Функция $length
Возвращает длину линии. Внимание! Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.
Синтаксис
$length
Аргументы
Нет аргументов.
Пример
$length -> метры, линейный слой должен быть в прямоугольной проекции.
Функция $perimeter
Возвращает периметр полигона. Внимание! Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.
Синтаксис
$perimeter
Аргументы
Нет аргументов.
Пример
$perimeter -> метры, линейный слой должен быть в прямоугольной проекции.
Функция $x
Возвращает координату X (долготу) точки. Внимание! Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.
Синтаксис
$x
Аргументы
Нет аргументов.
Пример
$x -> градусы, в случае, если точечный слой находится в географической системе координат.
$x -> метры, в случае, если точечный слой находится в прямоугольной системе координат.
Функция $y
Возвращает координату Y (широту) точки. Внимание! Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.
Синтаксис
$y
Аргументы
Нет аргументов.
Пример
$y -> градусы, в случае, если точечный слой находится в географической системе координат.
$y -> метры, в случае, если точечный слой находится в прямоугольной системе координат.
Записи
Функция $rownum
Функция для автоматической нумерации строк.
Синтаксис
$rownum
Аргументы
Нет аргументов.
Пример
$rownum -> 1,2,3... номер строки возвращается начиная с 1. Таким образом для нумерации строк нужно зайти в калькулятор полей, поставить галочку на "Обновить существующее поле", выбрать соответствующее поле и в окне "Выражение" написать "$rownum", нажать ОК.
Функция $id
Функция для автоматического присвоения идентификаторов (ID) объектов.
Синтаксис
$id
Аргументы
Нет аргументов.
Пример
$id -> 0,1,2,3... (нумерация начинается с 0).
Поля и значения
Содержит список полей слоя. Конкретные значения поля доступны по правому щелчку мыши.
Выберите значение поля из списка и щелкните по нему правой кнопкой мыши. Появится контекстное меню для загрузки значений из выбранного поля.
Function List
Operators
This group contains operators e.g + - *
+ operator
Return a summ of fields
Syntax
a + b
Arguments
a, b -> integer or real fields
Example
"field_name1" + "field_name2"
- operator
Syntax
Arguments
Example
* operator
Syntax
Arguments
Example
/ operator
Syntax
Arguments
Example
% operator
The modulo operation finds the remainder of division of one number by another.
Syntax
a % b
Arguments
a,b - are number.
Example
12345 % 10000 -> 2345
^ operator
Syntax
Arguments
Example
= operator
Syntax
Arguments
Example
> operator
Syntax
Arguments
Example
< Operator
Syntax
Arguments
Example
<> operator
Syntax
Arguments
Example
<= operator
Syntax
Arguments
Example
>= operator
Syntax
Arguments
Example
|| operator
Syntax
Arguments
Example
LIKE operator
Syntax
Arguments
Example
ILIKE operator
Syntax
Arguments
Example
IS operator
Syntax
Arguments
Example
OR operator
Syntax
Arguments
Example
AND operator
Syntax
Arguments
Example
NOT operator
Syntax
Arguments
Example
Math
This group contains math functions e.g square root, sin and cos
sqrt function
Syntax
Arguments
Example
sin function
Syntax
Arguments
Example
cos function
Syntax
Arguments
Example
tan function
Syntax
Arguments
Example
asin function
Syntax
Arguments
Example
acos function
Syntax
Arguments
Example
atan function
Syntax
Arguments
Example
atan2 function
Syntax
Arguments
Example
exp function
Syntax
Arguments
Example
ln function
Syntax
Arguments
Example
log10 function
Syntax
Arguments
Example
log function
Syntax
Arguments
Example
Conversions
This group contains functions to convert on data type to another e.g string to integer, integer to string.
toint function
Syntax
Arguments
Example
toreal function
Syntax
Arguments
Example
tostring function
Syntax
Arguments
Example
String
This group contains functions that operate on strings e.g replace, convert to upper case.
lower() function
Converts a string to lower case letters.
Syntax
lower(string)
Arguments
string -> is string. The String to convert to lower case.
Example
lower('HELLO World') -> 'hello world'
upper() function
Converts a string to upper case letters.
Syntax
upper(string)
Arguments
string -> is string. The String to convert to upper case.
Example
upper('hello WOrld') -> 'HELLO WORLD'
length() function
Returns the length of a string.
Syntax
length(string)
Arguments
string -> is string. The String to count the length of.
Example
length('HELLO') -> 5
replace() function
Returns a string with the the supplied string replaced.
Syntax
replace(string,before,after)
Arguments
string -> is string. The start string.
before -> is string. The string to replace.
after -> is string. The string that will replace before
Example
replace('QGIS SHOULD ROCK','SHOULD','DOES') -> 'QGIS DOES ROCK'
regexp_replace() function
Syntax
Arguments
Example
substr() function
Return a part of a string
Syntax
substr(string,startpos,length)
Arguments
string -> is string. The full string.
startpos -> is number. The start position to extract from.
length -> is number. The length of the string to extract.
Example
substr('HELLO WORLD',3,5) -> 'LLO W'
Geometry
This group contains functions that operate on geometry objects e.g length, area.
xat() function
Return x coordinate (longitude) of n-th point of a line.
Syntax
xat(n)
Arguments
n - integer, point number of a line (indices start at 0; negative values apply to the last index)
Example
xat(1) -> degree, if polyline layer is in Geographic Coordinate System
xat(1) -> meters, if polyline layer is in Projected Coordinate System
yat() function
Return y coordinate (latitude) of n-th point of a line.
Syntax
yat(n)
Arguments
n - integer, point number of a line (indices start at 0; negative values apply to the last index)
Example
yat(1) -> degree, if polyline layer is in Geographic Coordinate System
yat(1) -> meters, if polyline layer is in Projected Coordinate System
$area function
Return area of polygon. Attention! Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.
Syntax
$area
Arguments
No arguments.
Example
$area -> meters, (polygone layer must be in projected coordinate system)
$length function
Return length of a line. Attention! Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.
Syntax
$length
Arguments
No arguments.
Example
$length -> meters, (polyline layer must be in projected coordinate system)
$perimeter function
Возвращает периметр полигона. Attention! Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.
Синтаксис
$perimeter
Аргументы
Аргументов нет.
Пример
$perimeter -> метры (полигональный слой должен быть в прямоугольной проекции).
$x function
Return X-coordinate (longitude) of point. Attention! Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.
Syntax
$x
Arguments
No arguments.
Example
$x -> degree, if point layer is in Geographic Coordinate System
$x -> meters, if point layer is in Projected Coordinate System
$y function
Return Y-coordinate (latitude) of point. Attention! Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.
Syntax
$y
Arguments
No arguments.
Example
$y -> degree, if point layer is in Geographic Coordinate System
$y -> meters, if point layer is in Projected Coordinate System
Record
$rownum function
Syntax
Arguments
Example
$id function
Syntax
Arguments
Example
Fields and Values
Contains a list of fields from the layer. Sample values can also be accessed via right-click.
Select the field name from the list then right-click to access context menu with options to load sample values from the selected field.