Ciao,
stò portando avanti il progettone per un esame e devo ottimizzare al massimo alcune query SQL...come già mi è stato spiegato ci pensa l'ottimizzatore di query di MySql ma non si sa bene per quale motivo la proff come requisito fondamentale del progetto vuole che gliele portiamo anche in forma ottimizata...mi sò impiccando un po' a tentare di ottimizzare alcune query...mi date qualche idea per favore?

Le tabelle da usare e la relativa struttura sono le seguenti:

codice:
TABELLA COMMENTO:
mysql> describe COMMENTO;
+--------------------+-------------+------+-----+---------+----------------+
| Field              | Type        | Null | Key | Default | Extra          |
+--------------------+-------------+------+-----+---------+----------------+
| Id_Commento        | int(11)     | NO   | PRI | NULL    | auto_increment |
| Commentatore       | varchar(20) | NO   | MUL | NULL    |                |
| Oggetto_Commentato | int(11)     | NO   | MUL | NULL    |                |
| Data               | datetime    | NO   |     | NULL    |                |
| Titolo             | varchar(30) | NO   |     | NULL    |                |
| Commento           | text        | NO   |     | NULL    |                |
+--------------------+-------------+------+-----+---------+----------------+

TABELLA INSERZIONE:
mysql> describe INSERZIONE;
+-----------------+-----------------------+------+-----+---------+----------------+
| Field           | Type                  | Null | Key | Default | Extra          |
+-----------------+-----------------------+------+-----+---------+----------------+
| Id_Oggetto      | int(11)               | NO   | PRI | NULL    | auto_increment |
| Titolo          | varchar(60)           | NO   | MUL | NULL    |                |
| Descrizione     | text                  | YES  |     | NULL    |                |
| Costo_Base      | decimal(6,2)          | YES  |     | NULL    |                |
| Compralo_Subito | decimal(6,2)          | YES  |     | NULL    |                |
| Scadenza        | datetime              | YES  |     | NULL    |                |
| Stato_Oggetto   | enum('nuovo','usato') | YES  |     | NULL    |                |
| Id_Venditore    | varchar(20)           | NO   |     | NULL    |                |
| Id_Categoria    | varchar(30)           | NO   |     | NULL    |                |
+-----------------+-----------------------+------+-----+---------+----------------+
9 rows in set (0.00 sec)
E le query da ottimizzare sono le seguenti:

codice:
1) Visualizzare i commenti ricevuti da un certo oggetto ordinandoli in ordine ascendente rispetto al campo Commentatore*/

SELECT COMB.Oggetto_Commentato,INSERZIONE.Titolo, COMB.Titolo,COMB.Commentatore, INSERZIONE.Scadenza
FROM INSERZIONE, COMMENTO AS COMA, COMMENTO AS COMB
WHERE INSERZIONE.ID_Oggetto = COMA.Oggetto_Commentato
AND COMA.Id_Commento = COMB.Id_Commento
ORDER BY INSERZIONE.Id_Oggetto DESC
LIMIT 5;SELECT COMMENTO.Commentatore, COMMENTO.Titolo, COMMENTO.Commento
FROM COMMENTO
WHERE Oggetto_Commentato = 9
ORDER BY COMMENTO.Commentatore asc;
e

codice:
2) Visualizza i 5 ultimi oggetti inseriti nelle inserzioni che sono stati commentati e le relative informazioni dei 
      commenti */

SELECT COMB.Oggetto_Commentato,INSERZIONE.Titolo, COMB.Titolo,COMB.Commentatore, INSERZIONE.Scadenza
FROM INSERZIONE, COMMENTO AS COMA, COMMENTO AS COMB
WHERE INSERZIONE.ID_Oggetto = COMA.Oggetto_Commentato
AND COMA.Id_Commento = COMB.Id_Commento
ORDER BY INSERZIONE.Id_Oggetto DESC
LIMIT 5;
Mi chiedevo se le query che usano gli ORDER BY e LIMIT possano essere implementate in maniera migliore...oppure se si può migliorare qualcosa con diversi tipi di join da questi quà....

Per favore è importante...devo trovare il modo di ottimizzarle qualche altra query (oltre a quelle che ho già sistemato) altrimenti non posso consegnare il progetto.

Grazie mille
Andrea