Как использовать динамический "порядок ПО" в табличнозначной функции
Я использую табличнозначную функцию в качестве параметрического представления. Работает почти все, кроме заказа по частям.Я изменил первоначальную функцию на эту короткую.
Функция:
ALTER FUNCTION [dbo].[fn_Get_NormalOrders] ( @minimalLevel int, @recordStart int, @recordsEnd int, @orderBy varchar(30) ) RETURNS TABLE AS RETURN ( select * from ( select ROW_NUMBER() over (order by @orderBy) as row ,d.nameModel ,t.idToner from toner t inner join vwWebDevice d on d.idDevice = t.idDevice and d.statusDevice not like '%stale%' and isnull(d.deleted,0) = 0 inner join groups g on g.idGroup = d.idGroup where t.currentLevel <= @minimalLevel ) as x where x.row between @recordStart and @recordsEnd )
Что я уже пробовал:
Я нашел решение, сделав varchar этого запроса и выполнив его, но как мне вернуть результат? Когда я использую его так, как сейчас, результат всегда один и тот же.
CHill60
Насколько я понимаю, вы не можете выполнять динамический sql изнутри функции. Чего вы на самом деле пытаетесь достичь?