簡體   English   中英

在 BigQuery 中使用 JOIN 過濾國家/地區

[英]Filter country using a JOIN in BigQuery

在 BQ 的預定查詢中,我正在嘗試使用外部 Google 表格(已制作表格)過濾國家/地區。 該查詢已經有來自其他兩個表的連接。 我想在 WHERE 語句中輸入 SELECT 子句。

SELECT
    DATE(e_time) AS date,
    DATE(i_time) AS i_date,
    DATE_DIFF(DATE(e_time),DATE(i_time),day) AS days_since_install,
    country_code AS country,
  FROM
    `data.sessions`
  WHERE
    DATE(e_time)= DATE_SUB(CURRENT_DATE(), INTERVAL 2 day)
    AND country_code = (
    SELECT
      country_code as country
    FROM
      `data.sessions` a
   INNER JOIN
      `data.country_filter` b
    ON
      string_field_0 = a.country_code)

我不斷收到錯誤。 關於我哪里出錯的任何提示? 預計 output 將是表 1,其中包含表 b 中的過濾國家/地區。 先感謝您。

在您的查詢中,您必須使用

  SELECT
        DATE(e_time) AS date,
        DATE(i_time) AS i_date,
        DATE_DIFF(DATE(e_time),DATE(i_time),day) AS days_since_install,
        country_code AS country,
      FROM
        `data.sessions`
      WHERE
        DATE(e_time)= DATE_SUB(CURRENT_DATE(), INTERVAL 2 day)
        AND country_code in(
        SELECT
          country_code as country
        FROM
          `data.sessions` a
       INNER JOIN
          `data.country_filter` b
        ON
          string_field_0 = a.country_code)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM