在BigQuery SQL中,有时候我们需要将查询结果合并到一行,而不是分为两行或多行。这可以通过使用聚合函数来实现。以下是一个例子:
SELECT
COUNT(DISTINCT field1) AS distinct_field1,
COUNT(DISTINCT field2) AS distinct_field2,
FROM
your_table
WHERE
condition 1
GROUP BY
some_field
这个查询将返回每个“some_field”值的唯一“field1”和“field2”的计数。但是,它还会返回两个行,因为它们都有自己的计数。要将结果组合成单个行,我们可以使用如下所示的子查询:
SELECT
MAX(distinct_field1) AS distinct_field1,
MAX(distinct_field2) AS distinct_field2,
FROM (
SELECT
COUNT(DISTINCT field1) AS distinct_field1,
COUNT(DISTINCT field2) AS distinct_field2,
FROM
your_table
WHERE
condition 1
GROUP BY
some_field
)
这个查询将返回一个行,其中包含所有不同的“field1”和“field2”的计数。注意,我们使用MAX函数来保留我们在子查询中计算的所有计数。
希望这个例子有助于您了解如何将结果组合成一个行而不是多个行。