代码之家  ›  专栏  ›  技术社区  ›  Linh

选择记录字段但保留BigQuery中的记录结构

  •  0
  • Linh  · 技术社区  · 7 年前

    我有一个类似这样的bigquery记录字段: publication.record.id, publication.record.price, publication.record.other_fields

    如果我有一个查询语句: SELECT publication.record.id, publication.record.price FROM ... ,我会得到 id price 作为返回的字段名。

    我可以保留原始记录结构吗?基本上,如果我的输出是JSON,我希望仍然有:

    [
      {
        "publication": {
          "record": {
            "id": 123
            "price: 50.0
          }
      }
    ]
    

    而不是:

    [
      {
        "id": 123
        "price": 50.0
      }
    ]
    

    我可以的 SELECT publication FROM ... 得到了我需要的,但这将包括出版物中的所有字段,而不仅仅是 id, price .

    是否有方法选择记录中的特定字段,但保留其结构?

    谢谢。

    1 回复  |  直到 7 年前
        1
  •  1
  •   rtbf    7 年前

    您可以这样做:

    SELECT struct (struct(publication.record.id , publication.record.price) as record) 
    as publication   FROM `your_table`