首页 > 解决方案 > SQL 嵌套/子查询和 SQL 产生相同的结果。为什么使用嵌套/子查询?

问题描述

当我可以使用非嵌套 SQL stmt 获得相同的结果时,我不明白为什么该解决方案会给我一个嵌套的解决方案。使用嵌套 SQL 更好吗?谢谢 !

这是代码:

SQL:

select EMP_ID, F_NAME, L_NAME, DEP_ID from employees;

SQL嵌套/子查询解决方案:

select * from ( select EMP_ID, F_NAME, L_NAME, DEP_ID from employees) AS EMP4ALL;

标签: sqlsubquery

解决方案


您使用的任何平台的查询优化器几乎肯定会将它们解析为相同并为每个平台生成相同的执行计划。

简而言之,它们是相同的;派生表查询可能是更复杂事物的简化版本,而作者只是选择保留它,在没有更多上下文的情况下确实未知。


推荐阅读