dotaznejsem si jist, zda to dokazu nalezite vysvetlit, ale pokusim se
mam 3 zakladni tabulky:
kniha
autor
hlasovani
a jednu spojovaci>
kniha_has_autor
chci si pomoci sql dotazu secit pocty hlasu jednotlivych knih s tim, ze budu mit v dotazu i seznam autoru u kazde knihy
muj nasledujici dotaz ma chybu - pokud je autoru vice, nasobi se nimi ziskane hlasy v hlasovani
SELECT
id_dilo as id, druh, nazev, count(prihlaseny_id) as pocet_hlasu,
GROUP_CONCAT(DISTINCT prijmeni ORDER BY prijmeni DESC SEPARATOR ', ') as autori
FROM hlasovani
LEFT JOIN kniha ON id_dilo = kniha.id
LEFT JOIN kniha_has_autor ON kniha_id = kniha.id
LEFT JOIN autor ON autor_id = autor.id
WHERE hlasovani.rocnik = '2006' and druh = 'k'
GROUP BY id_dilo ORDER BY pocet_hlasu DESC
ma nekdo napad, jak ten sql dotaz upravit?
(mysql 5) |