是否可能在函數中包含臨時表?

[英]Is it possible to have temp tables in a function?


Apparently, I can't use them. I'm getting an error message like:

顯然,我不能使用它們。我收到一條錯誤信息,比如:

Invalid use of a side-effecting operator 'SELECT' within a function

在函數中使用副作用操作符“SELECT”無效

If I want to do something like this:

如果我想做這樣的事情:

select bleh
  into #temp
  from Blah

... inside a function.

…在一個函數。

2 个解决方案

#1


26  

No, per this thread where the same question was asked, you cannot, but you can use a table variable

不,在這個線程中,同樣的問題被問到,你不能,但是你可以使用一個表變量。

DECLARE @MyTempTableVariable TABLE (SCHEMA)

INSERT INTO @MyTempTableVariable
SELECT bleh
FROM bleh

#2


1  

You can also do it with a CTE. See the template browser in SSMS. IntelliSense confuses the issue and will show an error until you complete the CTE and the following insert/select, but it will work.

你也可以用CTE。在ssm中查看模板瀏覽器。IntelliSense會混淆這個問題,並且會顯示一個錯誤,直到你完成CTE和下面的insert/select,但是它會工作。


注意!

本站翻译的文章,版权归属于本站,未经许可禁止转摘,转摘请注明本文地址:https://www.itdaan.com/blog/2012/03/23/72f04baf229d2d00da20fd8a8d86f701.html



 
粤ICP备14056181号  © 2014-2021 ITdaan.com