Это может быть не только BigQuery, но и SQL в целом.
У меня есть этот SQL, и я хочу исключить, когда 1-е поле («код») имеет значение NULL.
SELECT REGEXP_EXTRACT(data, r'#\d+') code, COUNT(1)
FROM mydataset.mytable
GROUP BY 1
Это то, что я нашел работающим:
SELECT REGEXP_EXTRACT(data, r'#\d+') code, COUNT(1)
FROM mydataset.mytable
WHERE REGEXP_EXTRACT(data, r'#\d+') is not NULL
GROUP BY 1
Это не работает:
SELECT REGEXP_EXTRACT(data, r'#\d+') code, COUNT(1)
FROM mydataset.mytable
WHERE code is not NULL
GROUP BY 1
Я могу использовать то, что я нашел, но мне интересно, есть ли более элегантный способ сделать то же самое. Я думаю, я могу добавить еще один внешний SELECT, но это не то, что я хочу.