Справка по функциям калькулятора полей QGIS: различия между версиями
Bolotoved (обсуждение | вклад) |
Bolotoved (обсуждение | вклад) |
||
Строка 352: | Строка 352: | ||
Функции для преобразования одного типа данных в другой, например для преобразования строковых данных в числовые, числовых в строковые. | Функции для преобразования одного типа данных в другой, например для преобразования строковых данных в числовые, числовых в строковые. | ||
=== <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> === |
Версия от 16:47, 7 февраля 2012
Справка по функциям калькулятора полей 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
Оператор ^
Возвращает результат возведения числа 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
Синтаксис
Аргументы
Пример
Оператор ILIKE
Синтаксис
Аргументы
Пример
Оператор IS
Синтаксис
Аргументы
Пример
Оператор OR
Синтаксис
Аргументы
Пример
Оператор AND
Синтаксис
Аргументы
Пример
Оператор NOT
Синтаксис
Аргументы
Пример
Математические
Математические функции, такие как квадратный корень, sin и cos.
Функция sqrt
Синтаксис
Аргументы
Пример
Функция sin
Синтаксис
Аргументы
Пример
Функция cos
Синтаксис
Аргументы
Пример
Функция tan
Синтаксис
Аргументы
Пример
Функция asin
Синтаксис
Аргументы
Пример
Функция acos
Синтаксис
Аргументы
Пример
Функция atan
Синтаксис
Аргументы
Пример
Функция atan2
Синтаксис
Аргументы
Пример
Функция 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.
Функция $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
Return perimeter of a polygone. Attention! Следите, чтобы количество разрядов в результатах расчетов не превышало количество разрядов заданных при создании поля.
Syntax
$perimeter
Arguments
No arguments.
Example
$perimeter -> meters, (polygone layer must be in projected coordinate system)
$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.