Я смотрю на пользовательские функции docs для BigQuery, но мне нужно определить функцию, упрощающую процесс запроса нескольких таблиц. У меня есть люди, которые должны делать такие вещи, как это:Можете ли вы создать BigQuery UDF, который генерирует списки таблиц, а не работает в строках?
SELECT * FROM (TABLE_DATE_RANGE([SomeDataSet.SomeTableName_],DATE_ADD(CURRENT_TIMESTAMP(),-2,'DAY'),DATE_ADD(CURRENT_TIMESTAMP(),-1,'DAY'))) where magical_rainbows = 7;
Никто не будет помнить все это, и они будут в конечном итоге копировать-вставить его в из некоторого источника, снова и снова. Ничего особенного, кроме людей, ленивых и неизбежно развивает привычку устанавливать диапазон дат, чтобы быть всеобъемлющим, и управлять моим счетом через крышу.
Я предпочел бы использовать UDF, чтобы получить все, что вниз к чему-то они могут вспомнить - и типа быстро:
SELECT * FROM da_tables([SomeDataSet.SomeTableName_], -2, -1) where .....
Все, что я вижу в ОДС, однако, о производстве схемы таблиц, и кажется, не способ решить эту головную боль.
Если вы спросите «, как вы можете сделать его легко запросить в течение последних 3 дней таблиц, чтобы избежать всех вырезать-вставить », я бы предложил создать представление, в которое были встроены все ваши вычисления TABLE_DATE_RANGE(). –
Что касается проблемы «запустите мой счет через крышу», взгляните на «Контроль затрат на запрос с использованием специальных квот BigQuery» на странице https://cloud.google.com/bigquery/cost-controls –
, это можно было бы сделать легко используя table_query() и справочную таблицу, содержащую метаданные «бизнес-даты» ... поскольку она была удалена, пожалуйста, проголосуйте за получение функциональности обратно ... http://stackoverflow.com/questions/36673468/error -table -query -expressions-can not-query-bigquery-tables –