سلام
من منظور سئوال شما رو،بدرستی متوجه نشدم، به هرحال اگر بخواهید با کد نویسی سمت سرور، Script خود را Generate نمایید، اینکار، بستگی به نگرش کدنویسی تان و Interface ی که در اختیار کاربر قرار میدهید، دارد.
اگر بخواهید در SQL Server اینکار را انجام دهید، با استفاده از Case ، در قسمت Order By میتوانید اینکار را انجام دهید. به عنوان مثال:
DECLARE @Varsort varchar(50)
DECLARE @Varsort1 varchar(50)
SET @Varsort=''
SET @Varsort1='BusinessEntityID'
SELECT BusinessEntityID, FirstName, LastName
FROM Testoffset
ORDER BY case when @Varsort='Firstname'then Firstname End ASC,
case when @Varsort1= 'BusinessEntityID'then BusinessEntityID End ASC
OFFSET 3 ROWS
FETCH First 3 ROWS only
امیدوارم پاسخ تان را گرفته باشید.