У меня следующий вопрос, почему?
Ниже подзапрос производит более одного элемента
select item.quantity from unnest (_raw.line_items) as item
это очевидно - вывод здесь содержит столько элементов (строк), сколько элементов в массиве line_items
Итак, чтобы ваш запрос работал - вы можете просто добавить ARRAY перед ним - как в примере ниже
SELECT
_raw.created_at,
_raw.name,
ARRAY(select item.quantity from unnest (_raw.line_items) as item) as quantity
FROM `Orders` --as tb2 --,unnest (_raw.line_items) as item
where DATE(_raw.created_at) = "2020-04-27"
ИЛИ убедитесь, что вы ограничили вывод подзапроса только одним элементом, добавив LIMIT 1, как в Пример ниже
SELECT
_raw.created_at,
_raw.name,
(select item.quantity from unnest (_raw.line_items) as item LIMIT 1) as quantity
FROM `Orders` --as tb2 --,unnest (_raw.line_items) as item
where DATE(_raw.created_at) = "2020-04-27"
ИЛИ ... любые другие способы ограничить вывод этого подзапроса только одним элементом - который действительно зависит от вашего конкретного сценария использования c и того, что вы пытаетесь сделать достичь