У меня есть следующие таблицы в базе данных. У нас есть продукт, который имеет несколько продуктов для серии, и у нас есть ProductVariation, который имеет несколько вариаций продукта на продукт.T-SQL Выберите MAX из подзапроса
Мы желаем выполнить набор совокупных запросов в таблице ProductVariation для набора продуктов на основе идентификатора серии. Для SeriesID из 276 идентификатор продукта 400-415 соответствует идентификатору SeriesID. Затем мы хотим найти минимальное и максимальное количество различных полей в таблице ProductVariation, которым присвоено 400-415 ProductID.
T-SQL заявление я написал следующий: -
SELECT(
SELECT MAX([X]) FROM [ProductVariation] AS B WHERE B.ProductID = A.ProductID
)
FROM [Product] AS A
WHERE SeriesID = 12 AND IsDeleted = 0 and IsEnabled = 1
, но это возвращает 15 строк минимальных и максимальных данных. Я искал максимум максимума, но я не знаю, как приспособить вышеприведенный оператор для его получения. Нам нужно будет сделать 10 из этих агрегатов, по крайней мере, в том же запросе.
Может ли кто-нибудь предложить, как получить максимум от максимума?
Cheers, Mike.
Это то, что я пытался тоже, но я получаю 'неправильный синтаксис около ключевого слова SELECT' на линии 2. –
«Невозможно выполнить агрегатную функцию на выражение, содержащее совокупность или подзапрос ". –
WITH NewSelect AS (SELECT MAX ([WheelDiameter]) FROM [AUT]. [Dbo]. [Product] AS B WHERE B.ProductBlockID = A.ProductBlockID ) AS max1 FROM [AUT]. [Dbo] . [ProductBlock] AS A WHERE SeriesID = 12 И IsDeleted = 0 и IsEnabled = 1) SELECT MAX (max1) –