with allflags as ( select array_agg(flags) as flags from (select report(struct_pack(*COLUMNS('flag'))::JSON) as flags from t) ) select list_reduce( flags, (acc,x) -> list_intersect(acc,x) ) as "never worked" from allflags;