1
我已经给出了一个很大的查询来弄清楚。但是有太多的子查询几乎是不可能的。子查询的数量大约是15-20。你建议我做什么?如何找出含有太多子查询的查询
我已经给出了一个很大的查询来弄清楚。但是有太多的子查询几乎是不可能的。子查询的数量大约是15-20。你建议我做什么?如何找出含有太多子查询的查询
时这样怪物面对我最常做的是:
with subquery1 as (select /*big query*/), subquery2 as (select /*big query*/) select * from ... join subquery1 where foo in (select foo from subquery2)
在这一点上有些图案EME而且更经常的是,查询可以用合理的方式重写。
我要做的第一件事是发出explain plan来查看DBMS如何执行查询并从那里开始。
我希望你很清楚他们正在查询的表格!我认为你需要从那里开始 – V4Vendetta 2011-06-06 05:53:31