Bonjour,
je m’essais à la jointure pour faire des requêtes plus optimisées mais je coince sur un point.
Je dois passer une expression régulière dans la description de produits sous prestashop pour créer des caractéristiques. J’ai donc créé une table recherche et une table historique de recherche.
En enregistrant le fait qu’on a effectué la recherche pour la règle X et le produit Y je m’évite de repasser la règle sur un produit qui a déjà été testé. Problème, je n’arrive pas à faire une jointure avec double condition.
Avec cette requête mysql :
Je souhaite donc récupérer les id_produit uniquement des produits qui n’ont pas encore été traité par la règle en cours.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $result3 = mysql_query ("SELECT c.id_product, h.id_produit, h.id FROM category_product c LEFT JOIN recherche_caracteristique_historique h ON c.id_product = h.id_produit where c.id_category = '$id_categ' and h.id_recherche=$id_recherche and h.id IS NULL",$connexion); while($row = mysql_fetch_row($result3)){ $id_produit = $row[0];
Soucis, si un id_produit est enregistré dans recherche_caracteristique_historique pour la recherche 1 il ne ressort plus même si je suis en train de vérifier la recherche 2
Merci d’avance pour votre aide.
Cordialement,
Partager