Google bigquery 如何在Bigqery Ruby API中设置查询的目标表?
是否有BigQueryAPI的方法允许您设置查询的目标表?我在RESTAPI中找到了一个,但不适用于ruby之类的编程语言Google bigquery 如何在Bigqery Ruby API中设置查询的目标表?,google-bigquery,Google Bigquery,是否有BigQueryAPI的方法允许您设置查询的目标表?我在RESTAPI中找到了一个,但不适用于ruby之类的编程语言 如果有其他语言的例子。。也许我可以试着用ruby做同样的事情@mikhailberlyant发现了它 您需要通过API设置目标表。这些示例代码段中的任何一个都应该易于移植到客户端,并且足以让您继续: Java JobConfiguration jobConfiguration = newBuilder("select * from..)
如果有其他语言的例子。。也许我可以试着用ruby做同样的事情@mikhailberlyant发现了它
您需要通过API设置
目标表。这些示例代码段中的任何一个都应该易于移植到客户端,并且足以让您继续:
Java
JobConfiguration jobConfiguration = newBuilder("select * from..)
.setAllowLargeResults(true)
.setUseLegacySql(false)
.setDryRun(dryRun)
.setDestinationTable(TableId.of("projectId", "dataset", "table"))
.setCreateDisposition(CREATE_IF_NEEDED)
.setWriteDisposition(WRITE_TRUNCATE)
.setPriority(BATCH)
.build();
Python
from google.cloud import bigquery
client = bigquery.Client()
query = """\
SELECT firstname + ' ' + last_name AS full_name,
FLOOR(DATEDIFF(CURRENT_DATE(), birth_date) / 365) AS age
FROM dataset_name.persons
"""
dataset = client.dataset('dataset_name')
table = dataset.table(name='person_ages')
job = client.run_async_query('fullname-age-query-job', query)
job.destination = table
job.write_disposition= 'truncate'
job.begin()
我不知道这是否正是你要问的——但看起来是:o)
用于Google BigQuery API客户端库
您可以在中查看所有受支持客户端的更多信息。您可以使用单个命令查询目标表:
bigquery = Google::Cloud::Bigquery.new(...)
dataset = bigquery.dataset('my_dataset')
job = bigquery.query_job("SELECT * FROM source_table", table: dataset.table('destination_table'), write: 'truncate', create: 'needed')
job.wait_until_done!
通过这个链接,我现在知道他们是如何对待bigquery的“工作”的了