BigQuery DML COUNT () для нескольких таблиц - PullRequest
0 голосов
/ 03 октября 2018

Я ищу механизм для контроля точности данных, которые я ежедневно импортирую в несколько таблиц BigQuery.Каждая таблица имеет одинаковый формат со столбцом DATE и ID.Формат таблицы выглядит следующим образом:

Table_1
| DATE       | ID       |
| 2018-10-01 | A        |
| 2018-10-01 | B        |
| 2018-10-02 | A        |
| 2018-10-02 | B        |
| 2018-10-02 | C        |

То, что я хочу контролировать, - это эволюция числа идентификаторов через такую ​​таблицу вывода:

CONTROL_TABLE
| DATE       | COUNT(Table1.ID) | COUNT(Table2.ID) | COUNT(Table3.ID) |
| 2018-10-01 |                2 |           487654 |           675386 |
| 2018-10-02 |                3 |           488756 |           675447 |

Я пытаюсьсделать это с помощью одного отдельного SQL-запроса, но столкнуться с несколькими ограничениями DML, такими как:

-> One single SELECT with all the tables jointed is out of question for performance purpose (20+ tables with millions lines) 
-> I was thinking of going through temporary tables, but it seems I cannot run Multiple DELETE + INSERT functions on several tables with DML
-> I cannot use a wildcard table as the output of the query

У кого-нибудь есть идеи, как получить такой результат оптимизированным способом, в идеале с помощью одного отдельного запроса?

...