У меня есть это в моем сохраненном процессе. Я хотел бы сгруппировать записи по Offer_Continent
и упорядочить по Offer_CountryCode ASC
, но это не дает результатов в порядке группировки по континентам.
Ниже мое избрание
SELECT
Offer_SubCatName,
Offer_TagLine,
Offer_Type,
CustomOffersAttributes.Attribute_Value3,
Offer_ID,
Offer_ShortDescription,
Offer_AccommRating,
Offer_ResortName,
Offer_AccommName,
Offer_CountryCode,
Offer_Continent,
Offer_FlightSupplierCode,
Offer_OriginAirport,
Offer_DestinationAirport,
CustomOffersAttributes.Attribute_Value4,
CustomOffersAttributes.Attribute_Value,
CustomOffersAttributes.Attribute_Value2,
Op_Name
FROM
CustomOffers
INNER JOIN CustomOffersAttributes ON CustomOffersAttributes.Attribute_ID = dbo.fn_CustomOffers_CheapestDatePrice(CustomOffers.Offer_ID)
FULL OUTER JOIN Suppliers ON Suppliers.Op_Code = CustomOffers.Offer_FlightSupplierCode
WHERE
(
@CategoryID = 0
OR
Offer_CatID = @CategoryID
)
AND
(
@OfferIDs = ''
OR
Offer_ID in (select val from fn_CreateInList(@OfferIDs))
)
AND
(
@SubCategoryName = ''
OR
Offer_SubCatName = @SubCategoryName
)
AND ISNULL(Offer_Starts,GETDATE()) <= GETDATE()
AND ISNULL(Offer_Expires,GETDATE()) >= GETDATE()
GROUP BY
Offer_Continent,
Offer_SubCatName,
Offer_TagLine,
Offer_Type,
CustomOffersAttributes.Attribute_Value3,
Offer_ID,
Offer_ShortDescription,
Offer_AccommRating,
Offer_ResortName,
Offer_AccommName,
Offer_CountryCode,
Offer_Continent,
Offer_FlightSupplierCode,
Offer_OriginAirport,
Offer_DestinationAirport,
CustomOffersAttributes.Attribute_Value4,
CustomOffersAttributes.Attribute_Value,
CustomOffersAttributes.Attribute_Value2,
Op_Name
ORDER BY
Offer_Continent ASC,
Offer_CountryCode ASC
Выше приведен результат, как показано ниже
Африка (Offer_Continent)
- Кения - (Offer_CountrCode)
Caribbean (Offer_Continent)
- Антигуа - (Offer_CountrCode)
- Барбадос - (Offer_CountrCode)
- Гренада - (Offer_CountrCode)
- Монтего-Бей - (Offer_CountrCode)
- Kingston - (Offer_CountrCode)
- Сент-Люсия - (Offer_CountrCode)
- Тобаго - (Offer_CountrCode)
Но я бы хотел получить ЕДИНСТВЕННЫЙ заказ на Offer_CountryCode
Однако, когда я просто заказываю на Offer_CountryCode
, это выглядит как ниже
Caribbean (Offer_Continent)
- Антигуа - (Offer_CountrCode)
- Барбадос - (Offer_CountrCode)
- Гренада - (Offer_CountrCode)
- Монтего-Бей - (Offer_CountrCode)
- Kingston - (Offer_CountrCode)
Afirca (Offer_Continent)
- Кения - (Offer_CountrCode)
Caribbean (Offer_Continent)
- Сент-Люсия - (Offer_CountrCode)
- Тобаго - (Offer_CountrCode)
Как видите, карибский бассейн повторяется. Вот почему я подумал использовать GROUP BY Clause.В любом случае, я хотел бы иметь набор записей, который выглядит следующим образом.
Caribbean (Offer_Continent)
- Антигуа - (Offer_CountrCode)
- Барбадос - (Offer_CountrCode)
- Гренада - (Offer_CountrCode)
- Монтего-Бей - (Offer_CountrCode)
- Kingston - (Offer_CountrCode)
- Сент-Люсия - (Offer_CountrCode)
- Тобаго - (Offer_CountrCode)
Африка (Offer_Continent)
- Кения - (Offer_CountrCode)
Надеюсь, понятно, что я пытаюсь сделать ..? Заранее спасибо ..