Escludere dei parametri da una SELECT

macchiavelli.ivan

Utente Attivo
7 Dic 2012
67
0
0
Salve.

Ho 2 tabelle:

maestri ===> id, città, nome, cognome, sesso

lezioni ===> id, week, anno, lez, id_ins

Vorrei escludere da questa SELECT:

Codice:
SELECT * FROM maestri ORDER BY citta

Tutti i record a qui sono stati inseriti dei valori in week='1', anno='2012' (Ovviamente a id_ins corrisponderà id).

Come posso fare?
 
Ciao, prova cosi
Codice:
SELECT * 
FROM maestri M
JOIN lezioni L ON L.id_ins = M.id
WHERE L.week != 1 && L.anno != 2012
ORDER BY M.citta
 
dovrebbe essere cosi
questo operatore != vuol dire diverso da
 
Sicuro che ottieni l'effetto inverso? Perché sia la logica sia la sintassi sono corrette.
 
posto il dump delle tabelle.

In questo modo se qualcuno vuole testare l'sql

SELECT *
FROM maestri M
JOIN lezioni L ON L.id_ins = M.id
WHERE L.week != 1 && L.anno != 2012
ORDER BY M.citta

e capire cosa cè che non va, lo può fare.

-- 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=189 ;

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

-- 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`
--
 

Discussioni simili