Troppe query in una pagina sola, come risolvere?

shineone

Nuovo Utente
18 Nov 2005
10
0
0
Ciao a tutti, mi sono "impelagato" in una pagina ASP...

Dunque: uso MySQL (ho appena migrato da Access), il DB non è grande (circa 2-3 MB) ma nell'homepage del sito che sto realizzando avrei bisogno di estrarre molti records da molte tabelle differenti, purtroppo senza alcun legame tra di loro.

Ecco qui di seguito, alcune delle query da eseguire:

(estrarre alcuni dati relativi all'ultimo record inserito nella tabella news)
sql = "SELECT id,titolo,testo,immagine FROM news ORDER BY id DESC LIMIT 1"

(estrarre alcuni dati relativi all'ultimo record inserito nella tabella articoli)
sql = "SELECT id,autore,titolo,testo FROM articoli ORDER BY id DESC LIMIT 1"

(estrarre altri due records in maniera randomica dalla tabella articoli controllando tramite l'id che non venga pescato l'ultimo, già mostrato in precedenza)
sql = "SELECT id,autore,titolo FROM articoli WHERE id <> "& id_ultimo_articolo &" ORDER BY RAND() LIMIT 2"

(estrarre alcuni dati in maniera randomica dalla tabella gruppi)
sql = "SELECT id,nome,testo,img FROM gruppi ORDER BY RAND() LIMIT 1"



Come fatto per la tabella articoli poi, bisognerebbe fare per altre tre tabelle, arrivano ad avere alla fine, una decina di query.

naturalmente tutto ciò porta ad un sovraccarico dell'attività del server con conseguenze che purtroppo ben conosciamo...

Ho letto che in casi come questi verrebbero in aiuto le clausole JOIN e UNION ma solo se tra le varie query c'è una relazione, oppure se i campi estratti sono lo stesso numero e dello stesso tipo.

Mi è stato inoltre consigliato di utilizzare le "stored procedure" ma non ho ben capito come si raggruppano tutte le query.

C'è una soluzione che mi consenta di rendere il tutto più performante?
 

Discussioni simili