顶部的BigQuery获取一组Products和嵌套的相关表.然后,我在规范模式的不良尝试中应用过滤.这是过滤器代码.查询中有三个表,我想通过嵌套在底部查询中的值来过滤顶部查询.就像我说的,这目前产生了我们想要的结果.
但是,.Contains()为每个产生一个SQL WHERE EXISTS()子句.我们真的只需要一个,但我不知道如何获取内部ID与外部ID进行比较.
from p in bigQuery // Root table
where ( from pp in p.LPP // Level 1 nested table
where (from pv in pp.LPV // Level 2 nested table
where pv.colorid == intValue // Our filter value
select p.id).Contains(p.id) // Where exists
select p.id).Contains(p.id) // Where exists
select p;
Run Code Online (Sandbox Code Playgroud)
有什么想法吗?这样就生成了一个900行的SQL语句,到目前为止我们只有一个过滤器.