首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

sql2000 TOP使用变量的有关问题

2013-07-01 
sql2000 TOP使用变量的问题想执行这样的一条语句,但SQL2000不支持TOP加变量怎么办?declare @top intset @t

sql2000 TOP使用变量的问题
想执行这样的一条语句,但SQL2000不支持TOP加变量怎么办?

declare @top int
set @top = 30
INSERT INTO UpdateBak SELECT TOP CAST(@top as varchar) * FROM TSTAT

[解决办法]
那就用exec去执行动态拼接喽
[解决办法]
引用:
那就用exec去执行动态拼接喽


2000的话只能这个方法.
[解决办法]
declare @sql varchar(max)
set @sql=N'INSERT INTO UpdateBak SELECT TOP '+str(@top)+' * FROM TSTAT '
exec (@sql)
[解决办法]
declare @top int
set @top = 30 
INSERT INTO UpdateBak SELECT TOP (@top) * FROM TSTAT 

加个括号就可以了

[解决办法]
引用:
declare @top int
set @top = 30 
INSERT INTO UpdateBak SELECT TOP (@top) * FROM TSTAT 

加个括号就可以了

2000只能动态了
[解决办法]
top允许变量是sql server 2005的新功能,2000只能动态语句

热点排行