Ho 3 tabelle:
1 - messaggi;
< id
< id_mittente
< id_destinatario
< testo
2 - messaggi_cancellati;
< id
< id_messaggio
< id_utente
< cancellato
3 - utenti;
< id
< nome
Le tabelle 1 e 2 sono legate messaggi.id ->messaggi_cancellati.id_messaggio
Nella tabella 3, il valore id lo posso ritorvare in messaggi.id_mittente
e messaggi.id_destinatario ed anche messaggi_cancellati.id_utente
Ora io dovrei estrarre dalla tabella messaggi, tutti i record che con le
seguenti caratteristiche:
1 - non figurano nella tabella messaggi_cancellati
2 - per i quali messaggi.id_mittente != messaggi_cancellati.id_utente
3 - per i quali messaggi.id_mittente = 'VALORENOTO'
Ho provato, senza successo con:
SELECT messaggi.*, messaggi_cancellati.*, utenti.*
FROM messaggi, messaggi_cancellati, utenti
WHERE messaggi.id NOT IN (select id_messaggio from messaggi_cancellati)
and messaggi.id_mittente = '3' ORDER BY messaggi.id desc";
La query deve anche contenere il campo utenti.id e utenti.nome per i
quali messaggi.id_destinatario = utenti.id
Come fare?