2011-11-10 75 views

回答

0

我不知道有關應用Excel的參數,但要做到這一點T-SQL做:

select * 
from (
    select row_number() over (order by [Field]) as rowNum, * 
    from [myTable]) s 
where s.rowNum < @maxRows 
+0

「where」子句中不允許使用窗口函數。 – GSerg

+0

@GSerg - 對不起,是的,使用子查詢 – Keith

4

從SQL 2005和高達你可以寫你的查詢爲:

輸入您MSQUERY如下:

{CALL sp_executesql (N'select top (@a) * from mytable', N'@a int', ?)} 
+0

這不會在Excel的工作的QueryTable。 – GSerg

+1

它的工作原理,只需要使用sp_executesql來包裝查詢。 –

+0

上帝。多年來,我一直忍受着「參數不允許在無法用圖形表示的查詢中」。我發明了一個完整的血腥系統來解決這個限制。 – GSerg