如何 return Python 中 BigQuery 的布尔值

How to return boolean value from BigQuery in Python

我是 BigQuery 的新手。我想 return 来自 BigQuery 的布尔值。在这种情况下,我想输出“True”。为了做到这一点,我尝试了下面这篇文章所说的 items() 方法,但我不知道如何在我的代码中使用这个方法。当谈到从这个模式中获取价值时,有人能给我建议吗??或者我应该如何搜索它??

https://googleapis.dev/python/bigquery/latest/generated/google.cloud.bigquery.table.Row.html

【本应用功能】 获取请求参数并将它们传递给 BigQuery 和 return True 或 False 基于参数传递给 Client

from flask import Flask, request, jsonify
from google.cloud import bigquery


app = Flask(__name__)

@app.route('/')
def get_request():
    request_luid = request.args.get('luid') or ''
    client = bigquery.Client()
    query = """SELECT EXISTS(
                    SELECT 1
                    FROM `test-266778.conversion_log.conversion_log_2020*` as p
                    WHERE p.luid = '{}'
                    AND p.orderid != '' limit 1000)""".format(request_luid)


    job_config = bigquery.QueryJobConfig(
        query_parameters=[
            bigquery.ScalarQueryParameter("request_luid", "STRING", request_luid)
        ]
    )

    query_job = client.query(query)
    query_res = query_job.result()

    for row in query_res:
        return str(row)


if __name__ == "__main__":
    app.run()
【The result of the code above from Python file】

Row((True,), {'f0_': 0})


【On GCP console】

Row | f0_
1   | True ← This value should be output  

您需要更改 return 语句:

for row in query_res:
    return row[0]