If bigquery is installed, the unnest function (defined here) overrides the unnest function for all dialects.
In PostgreSQL usage of unnest is allowed with column identifiers (unnesting an array contained in a table column). But the global re-definition of unnest caused by bigquery makes code like this sa.func.unnest(some_column) fail with TypeError: The argument to unnest must have an ARRAY type. because, obviously, a column is not an array literal.
In my case I really do need many dialects installed at the same time.
If bigquery is installed, the
unnestfunction (defined here) overrides theunnestfunction for all dialects.In PostgreSQL usage of
unnestis allowed with column identifiers (unnesting an array contained in a table column). But the global re-definition of unnest caused by bigquery makes code like thissa.func.unnest(some_column)fail withTypeError: The argument to unnest must have an ARRAY type.because, obviously, a column is not an array literal.In my case I really do need many dialects installed at the same time.