gpt4 book ai didi

sql - 如何在 BigQuery 中选择包含所有 NULL 值的数据列

转载 作者:行者123 更新时间:2023-12-02 17:59:09 26 4
gpt4 key购买 nike

如何在 BigQuery 中选择全部为 NULL 值的数据列

A          B          C 
NULL 1 NULL
NULL NULL NULL
NULL 2 NULL
NULL 3 NULL

我想检索 A 列和 C 列。请您帮忙!!

最佳答案

扩展我对米哈伊尔答案的评论,这就是我的想法。它不需要生成查询字符串,如果您有大量列,查询字符串可能会很长。它将每个列名的空值计数与表中的总行数进行比较,以确定该列是否应包含在结果中。

    #standardSQL
WITH `project.dataset.table` AS (
SELECT NULL A, 1 B, NULL C UNION ALL
SELECT NULL, NULL, NULL UNION ALL
SELECT NULL, 2, NULL UNION ALL
SELECT NULL, 3, NULL
)
SELECT null_column
FROM `project.dataset.table` AS t,
UNNEST(REGEXP_EXTRACT_ALL(
TO_JSON_STRING(t),
r'\"([a-zA-Z0-9\_]+)\":null')
) AS null_column
GROUP BY null_column
HAVING COUNT(*) = (SELECT COUNT(*) FROM `project.dataset.table`);

关于sql - 如何在 BigQuery 中选择包含所有 NULL 值的数据列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46819678/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com