Конвертировать пустые значения в ноль при использовании функции Query
Есть ли способ конвертировать данные, поступающие в query()
функция, чтобы пустые / нулевые значения были преобразованы в ноль?
У меня есть набор данных с тремя столбцами:
Group AC Plan
Comms 350 [blank]
IT 50,000 85,000
Rent 15,000 15,000
Training [blank] 8,500
Я хочу запросить набор, чтобы найти разницу между AC и Plan,
например=query('data', "select A, B-C",1)
, Однако, так как в запросе пропущены пустые ячейки при расчете B-C
, результат такой:
Group Diff
Comms [blank]
IT -35,000
Rent 0
Training [blank]
Когда я хотел это:
Group Diff
Comms 350
IT -35,000
Rent 0
Training -8,500
Прежде чем вы начнете нервничать: я не могу изменить исходные данные (входящие данные на самом деле другой query()
с использованием pivot
функциональность). И причина, по которой мне нужно, чтобы это работало, я использую limit
пункт, чтобы ограничить результаты только верхней 25 и нижней 25 различий.
2 ответа
Вы можете избежать ARRAYFORMULA, используя функции MAP + LAMBDA. Выглядит короче и быстрее с моим большим набором данных в Таблицах.
=MAP(your_query, LAMBDA(X, IF(X="", 0, X)))
Думайте о X здесь как о математической переменной. Он представляет любой вывод из первого аргумента.