Как получить верхние n строк из таблицы, где значение n передается во время выполнения?Как получить верхние n строк из таблицы, где значение n передается во время выполнения?
ответ
В SQL Server 2005 и за его пределами вы можете фактически параметризовать верхнюю команду.
Код ниже от MSDN
USE AdventureWorks;
GO
DECLARE @p AS int;
SELECT @p=10
SELECT TOP(@p)*
FROM HumanResources.Employee;
GO
В более ранних версиях SQL Server вам нужно будет либо использовать сверку или динамический SQL.
Вы можете использовать set rowcount
. Чтобы получить первый 100, например:
declare @myrowcount = 100
set rowcount @myrowcount
select ..... from ... where...order by
, так как вы можете использовать любой из:
SET ROWCOUNT {номер | @number_var}
Это может дать нечетные результаты. Ответ Дэвида Холла даст правильные результаты – gbn
@gbn: какие нечетные результаты? – davek
В соответствии с BOL: SET ROWCOUNT: «Заставляет SQL Server прекратить обработку запроса после возврата указанного количества строк». TOP: «Указывает, что из результата запроса будет возвращен только первый набор строк». Пример: http://decipherinfosys.wordpress.com/2007/04/20/set-rowcount-and-table-functions/ – gbn
- 1. Выбрать верхние N строк из таблицы колонки, содержащей N
- 2. Как получить верхние n строк из ячейки таблицы в SQL
- 3. получить случайные верхние n строк, где n больше количества строк в таблице
- 4. Как удалить верхние n строк таблицы SQL Server в asp.net?
- 5. Изменение на n измерений во время выполнения
- 6. Выбрать верхние N строк для каждой группы
- 7. выберите TOP N строк из таблицы
- 8. Объявление n числовой переменной во время выполнения
- 9. Найти верхние "n" близлежащие координаты
- 10. Выходы Kaminari ** n ** таблицы с ** n ** строк
- 11. Обновить верхние N строк с N для каждой строки из другой таблицы
- 12. Как выбрать верхние n строк из datatable/dataview в ASP.NET
- 13. sql compact 3.5, выберите верхние n строк из каждой группы
- 14. Как получить верхние N записей таблицы MySQL, исключив массив групп?
- 15. hadoop cascading как получить верхние N кортежей
- 16. Почему [\ n $] работает во время (\ n | $)?
- 17. int [n] [m], где n и m известны во время выполнения
- 18. Как получить верхние N отдельных строк из таблицы с несколькими повторяющимися значениями?
- 19. Как сделать время выполнения O (N) от O (N^2)
- 20. Удалите n из m строк из таблицы
- 21. Получить верхние n-ые значения из прямоугольного массива
- 22. Получить наибольшее значение за n строк
- 23. Как получить верхние значения N каждого столбца в MySql
- 24. Извлечение n количество строк из таблицы
- 25. Получить значение из DOM во время выполнения
- 26. Выберите верхние N строк ПОСЛЕ сортировки из Dataview в C#
- 27. Получить N последних строк из таблицы с одной хранимой процедурой
- 28. Как я могу получить верхние N записей из запроса?
- 29. Время выполнения T (n) алгоритма
- 30. Исключить верхние и нижние n строк в SQL
+1 интересный - не знал, что было возможно! – davek