Probleme exécution requête
Mika
-
Mika -
Mika -
Bonjour à tous,
J'ai un souci avec une requête SQL.
Celle-ci s'exécute mais j'obtient le résultat au bout de 5minutes (le serveur est bien ralentit pendant ce temps la).
Mon problème est que je ne vois pas comment l'optimiser.
Cette requête doit me renvoyer les dates ou ,au moins, un produit appartenant à la catégorie 183 a été acheté. L'utilisateur sélectionne le mois et l'année où la recherche doit s'effectuer.
Voici mon code en php :
if ($_POST['mois'] || $_POST['annee'])
{
$query = "SELECT distinct(DATE(o.date_purchased)) as maDate, DAY(o.date_purchased) as day, MONTH(o.date_purchased) as month, YEAR(o.date_purchased) as year ";
$query .= 'FROM ' . TABLE_ORDERS . ' o ';
$query .= ', ' . TABLE_ORDERS_PRODUCTS . ' op ';
$query .= ', ' . TABLE_PRODUCTS . ' p ';
$query .= ', ' . TABLE_PRODUCTS_TO_CATEGORIES . ' pc ';
$query .= ', ' . TABLE_CATEGORIES . ' c ';
$query .= 'where o.orders_id = op.orders_id ';
$query .= 'and op.products_id = p.products_id ';
$query .= 'and p.products_id = pc.products_id ';
$query .= 'and pc.categories_id = c.categories_id ';
$query .= 'and c.parent_id = 183 ';
if ($_POST['mois'])
{
$query .= 'and MONTH(o.date_purchased) = ' . $_POST['mois'] . ' ';
}
if ($_POST['annee'])
{
$query .= 'and YEAR(o.date_purchased) = ' . $_POST['annee'] . ' ';
}
$query .= 'order by DAY(o.date_purchased)';
$livre_array = tep_db_query($query);
$num_result = tep_db_num_rows($livre_array);
}
En espérant que vous pourrez m'aider, merci d'avance.
J'ai un souci avec une requête SQL.
Celle-ci s'exécute mais j'obtient le résultat au bout de 5minutes (le serveur est bien ralentit pendant ce temps la).
Mon problème est que je ne vois pas comment l'optimiser.
Cette requête doit me renvoyer les dates ou ,au moins, un produit appartenant à la catégorie 183 a été acheté. L'utilisateur sélectionne le mois et l'année où la recherche doit s'effectuer.
Voici mon code en php :
if ($_POST['mois'] || $_POST['annee'])
{
$query = "SELECT distinct(DATE(o.date_purchased)) as maDate, DAY(o.date_purchased) as day, MONTH(o.date_purchased) as month, YEAR(o.date_purchased) as year ";
$query .= 'FROM ' . TABLE_ORDERS . ' o ';
$query .= ', ' . TABLE_ORDERS_PRODUCTS . ' op ';
$query .= ', ' . TABLE_PRODUCTS . ' p ';
$query .= ', ' . TABLE_PRODUCTS_TO_CATEGORIES . ' pc ';
$query .= ', ' . TABLE_CATEGORIES . ' c ';
$query .= 'where o.orders_id = op.orders_id ';
$query .= 'and op.products_id = p.products_id ';
$query .= 'and p.products_id = pc.products_id ';
$query .= 'and pc.categories_id = c.categories_id ';
$query .= 'and c.parent_id = 183 ';
if ($_POST['mois'])
{
$query .= 'and MONTH(o.date_purchased) = ' . $_POST['mois'] . ' ';
}
if ($_POST['annee'])
{
$query .= 'and YEAR(o.date_purchased) = ' . $_POST['annee'] . ' ';
}
$query .= 'order by DAY(o.date_purchased)';
$livre_array = tep_db_query($query);
$num_result = tep_db_num_rows($livre_array);
}
En espérant que vous pourrez m'aider, merci d'avance.
A voir également:
- Probleme exécution requête
- Échec de l'exécution du diagnostic de windows update - Guide
- Le service spouleur d'impression local n'est pas en cours d'exécution - Guide
- Quelle requête écrire pour demander au moteur de recherche de présenter de préférence les pages web traitant de tennis mais pas de tennis de table ✓ - Forum Android
- Microsoft excel attend la fin de l'exécution d'une action ole d'une autre application - Forum Excel
- Erreur d'execution 13 ✓ - Forum VB / VBA