2017-04-26 86 views
0

有沒有什麼辦法可以執行類似php $$var ..?

這將使var的值作爲var名稱。

我一直在谷歌搜索了很多小時螞蟻找不到任何滿足我的需求。

謝謝。

編輯:

目前我想實現的是類似這樣的

declare @table1 table(Name Varchar(100)) 
declare @table2 table(Name Varchar(100)) 
... 
declare @table10 table(Name Varchar(100)) 

declare @int1 int 
set @int1 = 0 
while @int1 < 10 
begin 
select @[table + @int1] 
END 
+0

沒有,有在T-SQL中沒有等效。使用動態SQL可能會實現類似的效果,但由於可變範圍的問題,這可能會造成問題。請考慮更新您的問題,並提供一些有關您希望解決的問題的詳細信息 - 可能有其他解決方案。 –

+0

嗨@EdHarper謝謝......並且我添加了一些我想實現的東西.. – MyASHeS

回答

0

東西由於在關注的例子是不是有效的T-SQL,目前還不清楚是否要選擇值爲@[table + @int1],或者從表格(即select name from @[table + @int1]) - 我在這裏假設它是第二個。

一種方法是將有一個單獨的表,指示器列中的行分類:

declare @table table(Name Varchar(100), groupid int) 
... 

declare @int1 int 
set @int1 = 0 
while @int1 < 10 
begin 
    select name from @table WHERE groupid = @int1 
    set @int1 = @int1 + 1 
end 
+0

是的......那就是解決它的一種方法.....謝謝... – MyASHeS