После того, как я тяжело ударил головой по таблице, я обнаружил, что проблема была вызвана опечаткой в файле конфигурации.
При попытке копирования из одной таблицы в другую и использовании SELECT AS STRUCT запустите проверку нуля следующим образом:
IF(foo.bar is null, null, (SELECT AS STRUCT foo.bar.* REPLACE(...))
Это предотвращает превращение вложенных структур с нулями в структуры, полные нулевых значений. [ 113]
Чтобы восстановить его с помощью оператора select, используйте условную проверку на значение, которое требуется, например, так:
IF (bar.req is null, null, bar)
Конечно, реальный запрос более сложен, чем этот. Хорошей новостью является то, что запрос на восстановление должен выглядеть аналогично исходному запросу, который испортил формат
.