- Home
- Categorie
- Coding e Sistemistica
- PHP
- Unire i risultati di due query
-
Unire i risultati di due query
Salve a tutti!
Volevo chiedervi se c'è un modo (e sarà stupidissimo) ma io ancora non l'ho scoperto, per unire i risultati di 2 query e visualizzarli con un unico mysql_fetch_row.
Quando parlo di unire due risultati di 2 query intendo dire mantenere l'ordine delle due queryESEMPIO:
Supponiamo che abbia 1 Tabella così composta
ID - NOME - DESCRIZIONE - VALUTAZIONESELECT * FROM Tabella WHERE
nome
= 'pippo' ORDER BYvalutazione
con
SELECT * FROM Tabella WHERE
descrizione
= 'ciccio' ORDER BYvalutazione
se facessi un unica query perderei l'ordine poichè ordinando per valutazione i pippo e i ciccio si mescolano.
Supponendo che mi serva obbligatoriamente un solo mysql_fetch_row perchè eseguo delle operazioni su di essi, come posso fare ad ottenere i risultati in quest'ordine prima i pippo per valutazione e poi i ciccio per valutazione?
-
SELECT * FROM Tabella WHERE
nome
= 'pippo' ORDER BYvalutazione
UNION SELECT * FROM Tabella WHEREdescrizione
= 'ciccio' ORDER BYvalutazione
-
Io ci avevo già provato ma evidentemente UNION e ORDER BY non vanno d'accordo, ecco il messaggio d'errore di Mysql
#1221 - Uso errato di UNION e ORDER BY
-
Ciao Lady e benvenuta sul forum,
per utilizzare una union i nomi dei campi delle tabelle devono essere uguali. lo sono?
-
Scusa, con l'orde ci vogliono le parentesi!
(SELECT * FROM Tabella WHERE
nome
= 'pippo' ORDER BYvalutazione
)
UNION (SELECT * FROM Tabella WHEREdescrizione
= 'ciccio' ORDER BYvalutazione
)