首页 > 解决方案 > 在 BigQuery 中的查询中删除带有条件的行

问题描述

我正在使用 BigQuery 中的选择查询创建一个新表,并且我希望能够在没有 prd.univ 为 NULL 的行的情况下创建。

我的查询如下:

 select
        prd.key_web
        , dat_log
        , prd.nrb_fp
        , prd.tps_fp
        , prd.univ
        , prd.suniv
        , prd.fam
        , prd.sfam
    from product as prd
    left join cart as cart
        on prd.key_web = cart.key_web
        and prd.dat_log = cart.dat_log
        and prd.univ = cart.univ
        and prd.suniv = cart.suniv
        and prd.fam = cart.fam
        and prd.sfam = cart.sfam

此处的目的是以最少的步骤从我的结果表中排除具有 prd.univ 值为 NULL 的行。

标签: sqlgoogle-bigquery

解决方案


LEFT JOIN没有任何意义,因为您只是从第一个表中获取列。您的过滤就是一个WHERE子句:

select prd.key_web, prd.dat_log, prd.nrb_fp, prd.tps_fp,
       prd.univ, prd.suniv, prd.fam, prd.sfam
from product prd
where prd.univ is not null;

推荐阅读