sql - 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;
解决方案
您使用的任何平台的查询优化器几乎肯定会将它们解析为相同并为每个平台生成相同的执行计划。
简而言之,它们是相同的;派生表查询可能是更复杂事物的简化版本,而作者只是选择保留它,在没有更多上下文的情况下确实未知。
推荐阅读
- db2 - 是否可以允许不同但仅允许 2 个值?
- visual-studio-code - 这些 VS Code 模板字符串是什么意思?
- google-chrome-devtools - 有没有办法使用 Puppeteer 或 Chrome DevTools 延迟 Chrome 响应负载?
- c# - 如何从此链接中的原始文本中获取第 3 行的文本?
- css - 尝试用颜色填充图像并使用 css 使其下降
- r - 在带有函数的 Shiny 应用程序中使用 ggplot 显示图形
- gitlab - 如何从 git 主存储库(最新标签)获取 DAG 文件到 bitnami helm
- python - 如何在Python中读取一个空格直到下一个空格
- javascript - 尽管在代码中明确说明了该程序不返回空值,是否有原因?
- spring-boot - 我正在按照春季教程制作冠状病毒跟踪器应用程序。但是在使用百里香进行解析时遇到了问题