grazie Piero,
mhhh avevo letto che nel caso di relazioni molti a molti, per estrarre i dati, erano neccessarie + query, quindi stavo a scervellarmi con le subquery che devo dire che nn mi sono di nessuna utilità!!!almeno in queste estrazioni
Per il libro si va bene così
ma per la scheda degli autori (in cui raggruppo per autore) ho il problema della moltiplicazione delle voci nelle relazioni uno a molti (quindi mi vedo + volte la casa editrice se l'autore ha scritto più libri)
SELECT li.id_Libro,li.titolo,ce.nome,li.dir,
GROUP_CONCAT( au.nome ORDER BY au.nome ASC ) AS autore,
GROUP_CONCAT( au.id_Autore ORDER BY au.nome ASC ) AS id_autore
FROM libri AS li
LEFT JOIN collane AS co ON co.id_Collana = li.id_Collana
LEFT JOIN case_editrici AS ce ON ce.id_Casa = co.id_Casa
LEFT JOIN libri_autori AS la ON li.id_Libro = la.id_Libro
LEFT JOIN autori AS au ON la.id_Autore = au.id_Autore
WHERE li.id_Libro = ".$id."
GROUP BY li.id_Libro
è possibile fare 2 group by?
SELECT au.nome, au.contatti, au.descrizione, au.dir,
GROUP_CONCAT( li.id_Libro ORDER BY li.uscita DESC ) AS id_Libro,
GROUP_CONCAT( li.titolo ORDER BY li.uscita DESC ) AS titolo,
GROUP_CONCAT( ce.nome ORDER BY ce.id_Casa ) AS id_Casa,
GROUP_CONCAT( ce.id_Casa ORDER BY ce.id_Casa ) AS casa
FROM autori au
LEFT JOIN libri_autori la ON au.id_Autore = la.id_Autore
LEFT JOIN libri li ON la.id_Libro = li.id_Libro
LEFT JOIN case_editrici ce ON li.id_Casa = ce.id_Casa
WHERE au.id_Autore ='".$id."'
GROUP BY au.id_Autore
del tipo quanto estraggo dalla tabella autori raggruppo per l'id dell'autore
quando estraggo dalla tabella case editrici raggruppo per id_Casa e così non ho doppioni