SQL 语句select top 变量问题

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

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...