Google bigquery 在同一id上连接两个数组

Google bigquery 在同一id上连接两个数组,google-bigquery,Google Bigquery,我有两张桌子: 表1带有访问id,收入 表2显示了访问id,访问了一系列产品我的网站上访问了一系列产品 表3带有访问id、购买的阵列以及在我的网站上购买的一系列产品 当我加入everything时,所购买的产品(表3)会在每次访问的产品中重复出现。我怎样才能避免这种情况 谢谢 编辑:帮助你理解我的意思 表一: 访问id 123456 123457 您需要添加一个WHERE子句来限制行,这样您只能看到其中两个.user\u id=三个.userid.嘿,Lionel,谢谢。为了更好地理解我的问

我有两张桌子:

  • 表1带有
    访问id,收入
  • 表2显示了
    访问id,访问了一系列产品
    我的网站上访问了一系列产品
  • 表3带有
    访问id、购买的阵列
    以及在我的网站上购买的一系列产品
当我加入everything时,所购买的产品(表3)会在每次访问的产品中重复出现。我怎样才能避免这种情况

谢谢

编辑:帮助你理解我的意思

表一:

访问id 123456 123457
您需要添加一个WHERE子句来限制行,这样您只能看到其中两个.user\u id=三个.userid.

嘿,Lionel,谢谢。为了更好地理解我的问题,我添加了一个例子。先谢谢你。
SELECT
  visit_id,
  ARRAY_AGG(STRUCT(
            product_visited_id,
            product_name)
           ) AS products_visited,
  ARRAY_AGG(STRUCT(
            product_bought_id,
            product_name)
           ) AS products_bought,
 FROM (SELECT *
  FROM table_one
  LEFT JOIN table_two USING(visit_id)
  LEFT JOIN table_three USING(visit_id)
  GROUP BY visit_id)