SUM Tra due tabelle

macchiavelli.ivan

Utente Attivo
7 Dic 2012
67
0
0
Salve.

Vorrei sommare le lezioni divise per città dell'anno 2012, settimana 1

Es:
citta anno week n_lezioni
Verona 2012 1 45
Firenze 2012 1 24


Mi aiutereste a costruire la SELECT?

Ecco il Dump

-- Struttura della tabella `lezioni`
--

CREATE TABLE `lezioni` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`week` int(2) NOT NULL,
`anno` int(4) NOT NULL,
`lez` int(3) NOT NULL,
`id_ins` int(10) NOT NULL,
PRIMARY KEY (`id`),
KEY `id_ins` (`id_ins`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci AUTO_INCREMENT=280 ;

--
-- Dump dei dati per la tabella `lezioni`
--

INSERT INTO `lezioni` (`id`, `week`, `anno`, `lez`, `id_ins`) VALUES
(186, 1, 2012, 33, 73),
(187, 1, 2012, 12, 74),
(188, 1, 2012, 12, 75),
(189, 1, 2012, 12, 76),

-- --------------------------------------------------------

--
-- Struttura della tabella `maestri`
--

CREATE TABLE `maestri` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`citta` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
`nome` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`cognome` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`sesso` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'uomo',
UNIQUE KEY `id` (`id`),
KEY `id_scuola` (`citta`),
KEY `sesso` (`sesso`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci AUTO_INCREMENT=100 ;

--
-- Dump dei dati per la tabella `maestri`

INSERT INTO `maestri` (`id`, `citta`, `nome`, `cognome`, `sesso`) VALUES
(73, 'Verona', 'Roberto', 'Bianchi', 'uomo'),
(74, 'Firenze', 'Mario', 'Rossi', 'uomo'),
(75, 'Verona', 'Maria', 'Verdi', 'uomo'),
(76, 'Firenze', 'Marco', 'Marchi', 'uomo'),
--
 
ciao
ti stavo postando questa

Codice:
SELECT M.citta, SUM(L.lez)
FROM maestri AS M,lezioni AS L
WHERE L.id_ins = M.id AND L.anno = 2012 AND L.week = 1
GROUP BY (M.citta)
ORDER BY M.citta

una curiosità:se poi provala e dimmi se l'ho azzeccata anch'io
 
Bè sono pressocchè identiche a meno di un ordinamento :)
Sono simpatici gli utenti che una Olga postato il problema di impegnano per trovare la soluzione e una volta postata la condividono, questo vuol dire aver capito il significato di condivisione (motivo per cui nasce un forum, proprio per aiutare e condividere esperienze e problemi e ovviamente tentare di risolverli).
Complimenti.
 

Discussioni simili