1
A
回答
5
不,他们不是。
查询引擎甚至没有看到它们(它们只出现在计划的注释中)。
执行查询时,引擎根据查询计划处理实际的物理对象(表,索引等)。
当查询说是这样的:
SELECT *
FROM mytable t
,优化创建一个类似的计划:
|--Clustered Index Scan(OBJECT:([mydb].[dbo].[mytable].[pk_mytable] AS [t]))
和查询引擎解释是像“找到的第一页索引pk_mytable
并遍历页面的链接列表,返回找到的所有记录,直到没有更多记录“。
在这个阶段,你怎么确定别人的查询并不重要:引擎处理像页面,指针等物理对象,而不是像别名这样的逻辑事物。
1
它们不是更快,但它们确实使代码更易于阅读。它们对于某些事物是必需的,例如当您多次连接到一个表以及使用派生表时。
我发现总是使用别名并在select中别名所有列,以便维护人员无需弄清楚每个字段在六个月后出现在复杂查询中的哪个表。
相关问题
- 1. ActiveRecord表别名
- 2. 别名表情
- 3. MySQL表别名
- 4. T-SQL表名别名
- 5. 不是唯一的表/别名:表名
- 6. 更改SQL服务器快速表名
- 7. 比UIButton更快吗?
- 8. 访问别名表
- 9. 在bash中命名管道比普通管道更快吗?
- 10. 更改表的别名运行时ServiceStack.OrmLite
- 11. 在QuerySet中分配表别名名称
- 12. COUNT(fld)比COUNT(*)更快吗?
- 13. `map`比`each`更快吗?
- 14. “startsWith”比“indexOf”更快吗?
- 15. MATLAB比Python更快吗?
- 16. 类比CssClass更快吗?
- 17. 包含比StartsWith更快吗?
- 18. LINQ比ADO更快吗?
- 19. GENERATE SERIES比SUBQUERY更快吗?
- 20. 寻找别名列表
- 21. MySQL - 不唯一表/别名
- 22. 所有PHP别名列表
- 23. 从Zend_Db_Table_Select获取表别名
- 24. ActiveRecord中的表别名?
- 25. PL/SQL表和列别名
- 26. 结果集的表别名
- 27. SQL - 表别名范围
- 28. SubSonic中的表别名
- 29. 与表的别名在MySQL
- 30. 表的多个别名
它们的输入速度更快:)因为这个原因我总是使用它们并减少代码膨胀。 – AdaTheDev 2010-11-02 12:29:01