Как сравнить жестко запрограммированные значения с табличными данными в BigQuery? - PullRequest
0 голосов
/ 09 апреля 2020

Я хочу сравнить жестко закодированные значения с метаданными таблицы (столбцы, data_types). Как реализовать в BigQuery следующее обычное SQL logi c?

(select 'complaint_type' as column_name, 'STRING' as data_type
union all select 'complaint_description', 'STRING')s
except
select column_name, data_type 
from `bigquery-public-data.austin_311.INFORMATION_SCHEMA.COLUMN_FIELD_PATHS`

1 Ответ

2 голосов
/ 09 апреля 2020

Ниже для BigQuery Standard SQL

#standardSQL
WITH hard_coded_values AS (
  SELECT 'complaint_type' AS column_name, 'STRING' AS data_type UNION ALL 
  SELECT 'complaint_description', 'STRING' UNION ALL
  SELECT 'complaint_test', 'STRING' 
)
SELECT * 
FROM hard_coded_values
WHERE NOT (column_name, data_type) IN (
  SELECT AS STRUCT column_name, data_type 
  FROM `bigquery-public-data.austin_311.INFORMATION_SCHEMA.COLUMN_FIELD_PATHS`
)

с выводом

Row column_name     data_type    
1   complaint_test  STRING   
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...