RUS  ENG 

Примеры

Отчет по участкам: количество и протяженность трубопроводов с разбивкой по диаметрам.

Запрос по всей базе

В конструкции этого запроса используется оператор GROUP BY, который позволяет разбить записи базы данных по участкам на группы. Группировка записей выполняться по значению внутреннего диаметра трубопровода.

Выборка данных производится с помощью ключевого слова SELECT, после которого задаются параметры выборки. Осуществляется выбор следующих параметров:
- Внутренний диаметр трубы, м;
- Количество участков данного диаметра, для определения количества участков используются функция COUNT;
- Протяженность трубопроводов заданного диаметра, функция SUM определяет суммарную длину участков.
Ключевое слова AS используется для указания названий столбцов.
После ключевого слова FROM указывается слой, в котором будет производиться выбор.
Выражение WHERE используется для указания критериев выборки, в данном случае выбор осуществляется только по участкам. Участки водопроводной сети в структуре слоя имеют тип-8, условие typeid=8, в версии сборки 7.0.0.5425 и ниже задается type=8.

SELECT [Внутренний диаметр трубы, м] AS "Диаметр",
COUNT(*) AS "Количество участков",
SUM([Длина участка, м]) AS "Протяженность"
FROM [Пример водопроводной сети]
WHERE typeid=8
GROUP BY [Внутренний диаметр трубы, м]

Смотреть видео

Запрос по группе

Данный запрос можно выполнить по группе выделенных на карте участков. На карте, потребуется добавить часть участков в группу. В конструкцию запроса добавить оператор geometry.selected()=1.

SELECT [Внутренний диаметр трубы, м] AS "Диаметр",
COUNT(*) AS "Количество участков",
SUM([Длина участка, м]) AS "Протяженность"
FROM [Пример водопроводной сети]
WHERE typeid=8 and geometry.selected()=1
GROUP BY [Внутренний диаметр трубы, м]

Метки: SQL Примеры

Возврат к списку

Последнее обновление — 12.09.2018 10:35:03