给定一个丑陋的、可能长的、低效的、冗余的、看起来复杂的查询,有没有一个工具可以简化目标数据库的查询?如果不是,因为数据库无论如何都会优化查询,所以可以看到数据库将使用的优化查询吗?我对实际的查询计划不感兴趣,而是对优化和/或简化的查询感兴趣。这有可能吗?我对这些数据库的答案很感兴趣: MySQL、SQL Server、Postgres、SQLite。
发布于 2012-03-11 09:46:08
,因为数据库无论如何都会优化查询...
PostgreSQL优化了查询计划,但这很难转换为相应的SQL查询。被重写的不是SQL代码本身。因此,除非您对查询规划器的内部工作有非常深入的了解,否则您无法从优化的查询计划派生优化的SQL查询。
通过查看EXPLAIN ANALYZE的输出,您可以了解是使用了索引还是查询规划器选择了表扫描,以及其他有用的细节。
https://stackoverflow.com/questions/9651699
复制相似问题