sql – 表别名如何影响性能?

在阅读有关调整SQL查询的同时,我阅读了“使用多个表时始终使用表别名并将所有列名与别名前缀的位置”。

表别名如何影响性能?还是他们实际影响?

解决方法

别名不会以任何实际或可衡量的方式影响性能(编辑添加斜体)。也就是说,它会添加一个勉强(如果有)可衡量的延迟来查询编译。一旦编译(并重新使用),它没有任何效果

当您有多个表时,别名会消除歧义,因为您知道它是哪个表。它还可以防止未来的表更改中断查询。假设您将审核列添加到另一个表中已存在的表中。没有使用两个表的别名的查询将会中断。

在某些情况下,别名也是必需的。模式绑定视图。

sql解析引擎(在执行它们之前读取所有查询,并且在将来使用该信息来缓存已编译的查询以便更快的执行)是唯一查看别名的内容,并使用它来帮助消除符号查找中的歧义。在执行存储之前,系统将像任何其他语言的任何其他可编译语句一样,都会产生符号。

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...