MySQL Forums
Forum List  »  Italian

SQL con condizioni
Posted by: Movie Maniac
Date: May 22, 2008 09:02AM

Non so esattamente come intitolare questo post, ma spero di essere chiaro nel formulare la domanda.

Ho la seguente query:

SELECT UNIX_TIMESTAMP(news.date), news.counter, news.id_user, news.id_news, news.pid, news.title, news.update, programs.name FROM news, programs WHERE (news.waiting = '' AND programs.id_program = news.pid) ORDER BY news.date DESC

che mi restituisce un certo numero di risultati.

Il problema nasce dal fatto che il campo news.pid non sempre ha un suo corrispondente nel campo programs.id_program.

Alcune news infatti sono correlate ad un dato programma, altre no. Per cui la query sopra mi restituisce solo le news che sono effettivamente correlate a qualche programma.

Io vorrei invece che mi restituisse tutte le news, a prescindere dalla loro correlazione con un programma.

Quindi la query dovrebbe essere questa

SELECT UNIX_TIMESTAMP(news.date), news.counter, news.id_user, news.id_news, news.pid, news.title, news.update, programs.name FROM news, programs WHERE (news.waiting = '') ORDER BY news.date DESC

in un caso (nessuna correlazione con programmi) e questa nell'altro:

SELECT UNIX_TIMESTAMP(news.date), news.counter, news.id_user, news.id_news, news.pid, news.title, news.update, programs.name FROM news, programs WHERE (news.waiting = '' AND programs.id_program = news.pid) ORDER BY news.date DESC

E' possibile ottenere un risultato simile in runtime?

qualcosa del tipo:

SELECT UNIX_TIMESTAMP(news.date), news.counter, news.id_user, news.id_news, news.pid, news.title, news.update, programs.name FROM news, programs WHERE (news.waiting = ''

IF news.pid!=0
AND programs.id_program = news.pid
END IF

) ORDER BY news.date DESC

Lo so che la sintassi che ho postato non ha senso alcuno, però spero renda il senso: in sostanza a runtime il server aggiunge alle condizioni della query la stringa "AND programs.id_program = news.pid" se e solo se il campo news.pid è diverso da 0.

Spero di essere stato sufficientemente chiaro nell'esporre il mio problema.
Grazie

Options: ReplyQuote


Subject
Views
Written By
Posted
SQL con condizioni
5352
May 22, 2008 09:02AM
3322
May 30, 2008 04:24AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.