Я создал запрос для получения самых продаваемых продуктов. Теперь я хочу запросить этот результат, например, верхних порядка 100 продуктов по SerialNo или верхних порядка 100 продуктов по SellingQty ... и т.д ..Как запросить результат запроса?
Вот мой запрос, который даст все продукты заказ от totalOrders:
SELECT tblProducts.skuCode,tblProducts.productCode, tblProducts.productName, COUNT(tblOrders_Products.delivered) as totalOrder
FROM tblOrders_Products INNER JOIN tblProducts ON tblOrders_Products.productID = tblProducts.productID
WHERE tblProducts.productName is not null
GROUP BY tblOrders_Products.delivered, tblOrders_Products.productID, tblProducts.skuCode, tblProducts.productName,tblProducts.productCode
ORDER BY totalOrder
Я считал, что нужно создать представление. Но многие сообщения говорят, что, используя предложение Order By с представлением, is harmful или не дать результат sometime, Итак, мне интересно, как это можно сделать?
Я могу сделать это в .NET путем сортировки DataTable
и использования этого как DataSource. Но как это можно сделать в SQL SERVER?
И какой путь быстрее? Заказ на SQL Server или DataTable
? Я использую SQL SERVER 2005.
Спасибо.
Добавить опцию TOP в выбранном элементе, например, 'SELECT TOP 100 SELECT tblProducts.skuCode, tblProducts.productCode, tblProducts.productName, .....' –
Группировка по полному заказу позволит вам проверить TOP (X) или TOP (X) процентов от вашего запроса –
Вы хотите заказать по номеру SerialNo или заказать по SellingQty ПОСЛЕ вашего заказа По totalOrder? Или вы просто хотите переключить параметр Order By? –