Bonjour!
Je suis actuellement en train de transférer une grosse base de donnée (site marchand), et je dois créer le script qui écrira le fichier .csv pour transférer les produits
Cependant, au moment d'inclure le prix des produits, il se trouve que les anciens prix ont été gardés dans la base de données, afin de garder un historique
Mais du coup, je n'arrive pas a récupérer seulement le dernier prix, sachant que j'aimerais faire une seule requête, et non pas un script php appelant les id produits un par un, ce qui me semble moins optimisé (à voir, je me trompe peut être totalement!)
Voici le début de ma requête (qui retourne tous les prix de chaque produit):
et un bout de code prometteur trouvé sur internet, à rajouter à la requête précédente:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT A.product_id 'ID', A.product_publish 'active', A.product_name 'name', C.category_name 'categories', D.product_price FROM jos_vm_product as A LEFT JOIN jos_vm_product_category_xref B ON A.product_id = B.product_id AND main_category LEFT JOIN jos_vm_category C ON B.category_id = C.category_id LEFT JOIN jos_vm_product_price D ON D.product_id = A.product_id
Seulement, le tout me donne un product_price NULL...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 LEFT JOIN (SELECT MAX(mdate) 'tmpdat', product_id AS tmpid FROM jos_vm_product_price S GROUP BY 'tmpid') AS T ON A.product_id = tmpid AND D.mdate = 'tmpdat'
Donc voilà, je m'en remet à vous, ayant été incapable de trouver par moi même la solution
Merci d'avance!!![]()
Partager