【问题标题】:Airflow Bigquery Hook : how to save results in python variable?Airflow Bigquery Hook:如何将结果保存在 python 变量中?
【发布时间】:2021-04-07 12:53:45
【问题描述】:

我在气流代码中使用了 bigquery 钩子。

查询示例:select count(*) from 'table-name'; 所以它只会返回 1 个整数作为结果。

如何将其保存在整数 python 变量而不是整个 pandas 数据帧中?

下面是我的代码示例,

hook = BigQueryHook(bigquery_conn_id=BQ_CON, use_legacy_sql=False)
bq_client = bigquery.Client(project = hook._get_field("project"), credentials = hook._get_credentials())
query = "select count(*) from dataset1.table1;"
df = bq_client.query(query).to_dataframe()

【问题讨论】:

    标签: python pandas google-bigquery airflow hook


    【解决方案1】:

    如果只是一行,你可以将列命名为col1,并通过这个键名访问它

    query = "select count(*) as col1 from dataset1.table1;"
    
    query_result = client.query(query)
    
    result = query_result[0]['col1']
    

    或者如果你已经打电话给to_dataframe()

    result = int(df.values[0])
    

    【讨论】:

    • 谢谢!我知道我错过了一些非常基本的东西:)
    猜你喜欢
    • 1970-01-01
    • 2013-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-03
    • 2021-03-01
    • 1970-01-01
    相关资源
    最近更新 更多