Podzapytania w T-SQL

0

Witam. Mam bazę danych w której tabele są następujące:

Tabela rodziny
(PK) IDrodziny, nazwisko, imieOjca, imieMatki, adres

Tabela dzieci
(PK) IDdziecka, (FK) IDrodziny, imie, wiek, (FK) IDklasy

Tabela klasy
(PK) IDklasy, (FK) IDwychowawcy, kodKlasy

Tabela wychowawcy
(PK) IDwychowawcy, nazwisko

Muszę skonstruować następujące zapytanie: Wyświetl klasę, w której jest najwięcej dzieci mających rodzeństwo.

Pracuję na MS SQL Server 2005 a więc MySQL odpada. Czy ktoś może mi pomóc??</quote>

0

Hallo LukaszST!

Moze w ten sposob:

SELECT IDKlasy, COUNT(*) AS Expr1 
FROM   Dzieci
WHERE  IDRodziny IN (SELECT IDRodziny 
                     FROM   Rodziny
                     WHERE  EXISTS (SELECT IDRodziny, COUNT(*) AS Expr1
                                    FROM   Dzieci AS Dzieci_1
                                    WHERE  IDRodziny = Rodziny.IDRodziny
                                    GROUP BY IDRodziny
                                    HAVING     (COUNT(*) > 1)))
GROUP BY IDKlasy
ORDER BY COUNT(*) DESC

[???]

Pozdrawiam
Markus

Edit:
zapomnialem ORDER BY

1 użytkowników online, w tym zalogowanych: 0, gości: 1