Замените нулевые значения на 0, используя SQL в менеджере БД QGIS - PullRequest
0 голосов
/ 22 апреля 2019

Я хотел бы заменить значения, если атрибут равен 0, если их нет, используя менеджер баз данных QGIS и опцию «Виртуальные слои» в качестве базы данных.

Я пришел с таким запросом:

select if(field is null, 0.0, field) from layer

Однако это приводит к сбою всей программы. Я использую QGIS 3.2.3 из-за этой проблемы , которую я не могу обойти в моем текущем рабочем процессе.

Не поддерживает ли менеджер баз данных QGIS операторы SQL if? Если нет, то почему мой запрос приводит к сбою всей программы?

Кроме того, довольно неприятно, что DBManager полностью сбивает QGIS для каждой синтаксической ошибки или неправильной запятой, в отличие от выдачи осмысленного сообщения об ошибке.

...