考虑到下面的两个子查询,我今天被告知查询(1)效率很低,因为它将在过滤它们之前从视图中获取所有数据,因为where子句在嵌套查询之外是。= 'SYNC_FLAG'select * from (select * from VW_LOURD where Expr5 = 'SYNC_FLAG') as q
我重写了(2)上显示的查询,以便在子查询中使用过滤器。我得出的结论是,这两个查询将获取相同的数据量和
GROUP by backid
我想知道是否有任何方法可以将这3个查询合并,或者至少将最后2个查询合并为1。此外,如果只有最后2个查询可以合并,那么如何才能将2到1 colum的结果(例如1011 => 20 )添加到列backid和goid中,在这种情况下,应该添加计数。图为第二个查询的示例输出第三个查询完全相同,但来自不同的列。但主要目的是将示例中的第1次和第2次选择查询合并为1,并合并输出2,即如果EGLL在goid和backid中,则它们是必需的1键并将