У меня проблема с размещением ROW_NUMBER
в нужном месте, в то время как я использую переменные в моем запросе.Функция и переменные Row_number
Я хочу создать функцию поиска, проверив каждую запись с первой до последней записи. Есть что-то, с чем я не справляюсь с функцией ROW_NUMBER()
. Какие-нибудь советы?
/* DECLARATION */
...
/* LOOKUP */
SET @MAXID = (SELECT COUNT(ContractNr) FROM SenoOud.dbo.Financieel)
SET @COUNTER = 1
WHILE @COUNTER < @MAXID
BEGIN
SELECT @ROWNUM = ROW_NUMBER() OVER (ORDER BY ContractNr) AS 'CNUM',
@IGAS = [Factuur CO/LPG],
@IBRAND = [Factuur Brand],
@IOVERIG = [Factuur Overig],
FROM SenOoud.dbo.Financieel
WHERE @ROWNUM = @COUNTER
/* INSERTION */
...
Возможно, вы захотите взглянуть на SQL curso RS. Я думаю, что они будут лучшим решением, чем это :) – Luaan
Возможно, вы захотите взглянуть на подход, основанный на наборе SQL, чтобы избежать цикличности и курсора, где это возможно, например здесь: http://blogs.msdn.com/b /simonince/archive/2009/03/30/procedural-versus-set-based-sql.aspx :) – NickyvV
Зачем вам это нужно? Вероятно, это лучшее решение для более широкой проблемы с использованием подхода, основанного на наборе. – Serpiton