新しい標準SQLを使用して、Google BigQueryテーブル内の構造体の配列内に重複フィールドを持つ行を検索しようとしています。各行は、ビットのように見えるテーブルのデータ(簡体字):新しいBigQuery標準SQLの配列内で構造体を操作
{
"Session": "abc123",
"Information" [
{
"Identifier": "e8d971a4-ef33-4ea1-8627-f1213e4c67dc"
},
{
"Identifier": "1c62813f-7ec4-4968-b18b-d1eb8f4d9d26"
},
{
"Identifier": "e8d971a4-ef33-4ea1-8627-f1213e4c67dc"
}
]
}
私の最終目標は、本重複Identifier
値をInformation
エンティティを持つ行を表示することです。しかし、私は次の形式のエラーメッセージを取得しようとしたクエリの最も:
Cannot access field Identifier on a value with type ARRAY<STRUCT<Identifier STRING>>
はARRAY
内STRUCT
の内部データを操作する方法はありますか?
SELECT
Session,
Information
FROM (
SELECT
Session,
Information,
COUNT(DISTINCT Information.Identifier) AS info_count_distinct,
ARRAY_LENGTH(Information) AS info_count
FROM
`events.myevents`
WHERE
COUNT(DISTINCT Information.Identifier) != ARRAY_LENGTH(Information.Identifier)
LIMIT
1000)
WHERE
info_count != info_count_distinct
(それがerroringされている場合でも)あなたのクエリを提示するので、我々は何かのオフに開始することができます! –
確かに!私が作った2つの試みを追加するために質問を編集しました。 – Aaron
あなたは私の答えをチェック/試してみましたか? –