2015-04-16 2 views
0

Вот Exemple данных я мог быTrouble группирования результат от максимального кол-

**Car Name  Brand Name** 
Megan   Renault 
Clio   Renault 
Clio   Renault 
Willys   Jeep 
Willys   Jeep 
Willys   Jeep 

SQL, ниже даст мне результат, показывающий

Brand Name Car 
JEEP   Willys 

Я хотел бы иметь каждый бренд имя и лучший прокат автомобиля. Не самое лучшее. Любить любую помощь. Кстати, я не знаю, как использовать Внутреннее соединение, поэтому, если бы решение могло использовать предложение where, это было бы потрясающе! (Использование Access)

(результат хотел)

Brand Name Car 
    JEEP   Willys 
    RENAULT  Clio 

-

SELECT MARQUE.NOMMA AS [BRAND NAME], VEHICULE.MODELE AS [CAR NAME] 
    FROM VEHICULE, MARQUE, LOUER 
    WHERE MARQUE.CODEMA = VEHICULE.CODEMA 
    AND VEHICULE.NOIMMAT = LOUER.NOIMMAT 
    GROUP BY MARQUE.NOMMA, VEHICULE.MODELE, MARQUE.CODEMA 
    HAVING COUNT(MARQUE.NOMMA) = (SELECT max (NUMBER_OF_LOCATION) 
            FROM (
              SELECT COUNT(MARQUE.NOMMA) as [NUMBER_OF_LOCATION] 
              FROM VEHICULE, MARQUE, LOUER 
              WHERE MARQUE.CODEMA = VEHICULE.CODEMA 
              AND VEHICULE.NOIMMAT = LOUER.NOIMMAT 
              GROUP BY MARQUE.NOMMA, VEHICULE.MODELE 


            )); 

Вот схема

Vehicule(NoImmat, Modèle, DateAchat, CodeG#, CodeMA#) 
Louer(CodeC#, NoImmat#, DateDebLoc, DateFinLoc, KmDeb, KmFin 
Marque(CodeMA, NomMA, PaysMA, DateCreationMA, CodeTYCO#) 

ответ

0

Я побежал следующий на ваших данных и получил желаемое результаты:

select car, brand 
from (select distinct car, brand, count(*) as cnt 
      from test 
      group by car) 
group by brand 
having cnt = max(cnt) 
Смежные вопросы