【问题标题】:SQL Server - What is the internal query of selecting columns on a viewSQL Server - 在视图上选择列的内部查询是什么
【发布时间】:2018-07-07 23:24:40
【问题描述】:

如果我在视图中选择某些列,内部 SQL Server 将首先选择表/表的所有列,然后进行子查询?

例如:

名为 THEVIEW 的视图可能是:

Select id, LTrim(RTrim(Name)) as Name, Age, Age-1 as AgeMinus1 
From Persons

然后我会查询视图:

Select id, AgeMinus1
From THEVIEW

内部查询是这样的:

Select id, Age-1 as AgeMinus1 
From Persons

或者这个(然后只显示 id,AgeMinus1:

Select id, LTrim(RTrim(Name)) as Name, Age, Age-1 as AgeMinus1 
From Persons

谢谢大家!!!

【问题讨论】:

    标签: sql-server performance views


    【解决方案1】:

    如果你想查看 SQL 的内部运作,你需要使用 SQL server profiler,它可以非常直接地跟踪查询,建议你使用用户名过滤器或类似的东西,否则你会被大量的数据淹没。

    这里有一个关于如何运行它的link,如果您查询视图,您将看到由 SQL 生成的相应查询。

    【讨论】:

    • 我试过了,但 SQL Profiler 会向您显示对视图的查询...无论如何谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-10
    • 2011-11-12
    • 2023-01-26
    相关资源
    最近更新 更多