这是一个SQL Server表值函数吗?

时间:2018-03-03 13:39:50

标签: sql-server tsql

任何人都可以解释这个T-SQL语句:

select * 
from (select getdate()) as func(param)

你可以复制&粘贴代码,然后运行它

2 个答案:

答案 0 :(得分:3)

根本没有表值函数或动态SQL。这是一个简单的子查询:

inner query: select getdate()
outer query: SELECT * FROM (inner_query) AS func(param)

func - it is just alias for subquery
param - it is alias for column

可以改写为:

select sub.current_date_value
from (select getdate() AS current_date_value) as sub

答案 1 :(得分:1)

内部选择查询是派生表。搜索该术语以获得更多精益。这在功能上是相同的(没有双关语):

SELECT GETDATE() AS param;

此处无需使用派生表。