Что этот тип запроса называется (где вы строите строку для создания своего рода временную таблицу и тем, что ее преимущества по сравнению только с помощью временных таблиц?Что вы называете этот вид SQL запроса
SET @sqlstring = 'WITH TEMPProc AS
(
SELECT
CustType ,
[Description] ,
[ApplyVAT?],
[ProduceInvoices?] ,
[PurchaseSale] ,
TermsDays ,
DateTimeLastUpdated,
ROW_NUMBER() OVER (Order By ' + @SortExpression + ') As RowNumber
FROM dbo.CustomerTypes
)
SELECT
CustType ,
[Description] ,
[ApplyVAT?],
[ProduceInvoices?] ,
[PurchaseSale],
TermsDays ,
DateTimeLastUpdated
FROM TEMPProc
WHERE
ROWNUMBER > ' + CONVERT(VARCHAR,@LowerBand) +
' AND ROWNUMBER <' + CONVERT(VARCHAR,@UpperBand)
+ ' ORDER BY ' + @SortExpression
EXEC sp_executesql @sqlstring
Google знает ответ: http://msdn.microsoft.com/en-us/library/ms175972.aspx – Joe
@Joe является правильным, он называется CTE, но он очень похож на «производную таблицу», , который вместо того, чтобы вести ваш выбор, существует после «from». –
В зависимости от контекста его можно назвать «потенциальной уязвимостью SQL-инъекции». –