Buongiorno,
ho due tabelle chiamate broadcast e logbook.
Mi interessano particolarmente solo alcuni campi:
esistono i campo broadcast.info e logbook.n_shot che contengono la stessa informazione, cioè un intero.
Ora, la tabella logbook ha anche un campo outcome, che è il campo risultante della query.
Il problema è questo: vorrei che la query mi restituisse outcome SE E SOLO SE
1) i campi n_shot e info sono uguali
E
2) il campo info della tabella broadcast sia MASSIMO ASSOLUTO
Questa seconda clausola non riesco ad ottenerla.
Mi spiego:
ho n_shot = 500 e info = 500, e 500 è anche il valore massimo contenuto in info di broadcast message: allora restituisco il campo outcome di logbook.
Se invece ho la stessa condizione iniziale di prima, cioè ho in entrambe le tabelle n_shot = 500 e info = 500 ma nella tabella broadcast esiste un info = 501, allora la query deve restituire NULL.
Io ho provato così:
Ma la query non dà il risultato ottenuto, dato che mi restituisce un valore anche se info in broadcast non è massimo assoluto.select logbook.outcome from broadcast_message, logbook WHERE logbook.n_shot = broadcast_message.info HAVING max(broadcast_message.info) limit 1;
Come risolvo il mio problema?