【SQL,语句select,top,变量问题】select into 变量

今天我在写一个存储过程的时候,想动态的取若干行出来,开始用拼接字符串也可以,但是总觉得不好,就在网上查资料,找到一种方式,但是怎么也没有成功,后来终于发现是该方法不能在SQL2000中使用,只能在SQL2005以上使用。

1、拼接查询语句(SQL2000,2005,2008均可)

DECLARE @a AS INT

SET @a=1

EXEC("SELECT TOP "+@a+" * FROM mtrcLanguages")

2、直接使用(适用SQL2005以上)

DECLARE @a AS INT

SET @a=2

SELECT TOP(@a) * FROM Common.tblCode tc