Имя столбца неоднозначно при попытке запроса нескольких таблиц в BigQuery - PullRequest
0 голосов
/ 11 апреля 2019

Я хочу запросить несколько таблиц с одинаковыми именами столбцов в одинаковом порядке и объединить результаты.

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 выдает следующую ошибку:

Column name init_statute is ambiguous at [8:3]

Как запросить эти таблицы и объединить все полученные строки в один наборрезультатов?

1 Ответ

2 голосов
/ 11 апреля 2019

Я думаю, что вы ищете UNION ALL против CROSS JOIN (примечание: запятая в BigQuery Standard SQL используется для экспресс CROSS JOIN)

Итак, вы, скорее всего, ищете ниже

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%'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...