Google bigquery 尝试在BigQuery中查询多个表时,列名不明确

Google bigquery 尝试在BigQuery中查询多个表时,列名不明确,google-bigquery,Google Bigquery,我想查询多个表,所有表都以相同的顺序使用相同的列名,并合并结果 SELECT SUBSTR(arrest_date, 0, 4) arrest_year, * FROM `OBTS.circuit11`, `OBTS.circuit15`, `OBTS.circuit17`, `OBTS.circuit19` WHERE init_statute LIKE '%3%22%32%' OR init_statute LIKE '%3%22%34%' OR LOWER(

我想查询多个表,所有表都以相同的顺序使用相同的列名,并合并结果

SELECT SUBSTR(arrest_date, 0, 4) arrest_year, *
FROM 
  `OBTS.circuit11`,
  `OBTS.circuit15`,
  `OBTS.circuit17`,
  `OBTS.circuit19`
WHERE 
  init_statute LIKE '%3%22%32%' OR
  init_statute LIKE '%3%22%34%' OR
  LOWER(init_charge_descrip) LIKE '%suspend%';
当我运行这个BigQuery时,会出现以下错误

列名init_规约在[8:3]处不明确


如何查询这些表并将所有结果行合并到一组结果中?

我想您正在寻找UNION all vs CROSS JOIN注意:BigQuery标准SQL中的逗号用于快速交叉连接

所以,你最有可能在下面寻找

SELECT SUBSTR(arrest_date, 0, 4) arrest_year, * 
FROM (
  SELECT * FROM `OBTS.circuit11` UNION ALL
  SELECT * FROM `OBTS.circuit15` UNION ALL
  SELECT * FROM `OBTS.circuit17` UNION ALL
  SELECT * FROM `OBTS.circuit19`
)
WHERE 
  init_statute LIKE '%3%22%32%' OR
  init_statute LIKE '%3%22%34%' OR
  LOWER(init_charge_descrip) LIKE '%suspend%'