下面的查询可以帮助我计算BQ中一个表的所有列中每列报告了多少个空值:
SELECT col_name, COUNT(1) nulls_count
FROM table t,
UNNEST(REGEXP_EXTRACT_ALL(TO_JSON_STRING(t), r'"(\w+)":null')) col_name
GROUP BY col_name
;
我需要调整它,使它计数非空值。我尝试使用负前瞻,但它似乎不工作。我的最终目标是指示某个列是否报告至少1个非空值。
输入示例(表格):
输出示例:
column_c不存在,因为它的所有值都是空。
1条答案
按热度按时间l0oc07j21#
您可以尝试此(不带REGEX)解决方案
输出: