miiidooo-19 Posted July 12, 2012 Share Posted July 12, 2012 Bonjour à tous comme c'est expliqué dans le titre de mon topic, je souhaite créer une requête sql que je vais exécuter dans phpmyadmin afin de mettre tous les produit d'une catégorie en promo de 10% sachant que dans cette catégorie les produit sont dans des sous-catégorie exemple : catégorie pantalons : sous catégorie de pantalons : slim coupé jean version PS 1.3.1.1 et aussi pour la version 1.4.7.0 et merci d'avance. Link to comment Share on other sites More sharing options...
Peuh Posted July 12, 2012 Share Posted July 12, 2012 (edited) 'Update '._DB_PREFIX.'product set reduction_percent = 10 , reduction_from ='date debut', reduction_to = 'date fin' where id_product in (select id_product from '._DB_PREFIX_.'category_product where id_category IN (select id_category from '._DB_PREFIX_.'category where id_parent = 'la categorie de depart' GROUP BY id_category) GROUP BY id_product ) ' C'est vite fait avant le café matinal donc largement optimisable, j'en conviens, mais ça fait l'affaire Edited July 12, 2012 by Peuh (see edit history) Link to comment Share on other sites More sharing options...
miiidooo-19 Posted July 12, 2012 Author Share Posted July 12, 2012 (edited) Merci pour votre réponse Peuh je pense que c'est pour la V1.3.1.1 n'est ce pas ? Edited July 12, 2012 by miiidooo-19 (see edit history) Link to comment Share on other sites More sharing options...
Peuh Posted July 12, 2012 Share Posted July 12, 2012 Oui tout à fait Link to comment Share on other sites More sharing options...
Peuh Posted July 12, 2012 Share Posted July 12, 2012 (edited) Attention : ce n'est pas propre de faire ainsi mais vous semblez décidé à le faire, donc voici la requête pour la 1.4 mais je vous conseille de faire une boucle en PHP et d'utiliser les fonctions à votre disposition. D'autre part je vous conseille de considérer l'achat de ce module, par exemple : http://addons.prestashop.com/fr/bulk-update/5013-Mise-jour-des-prix-en-masse.html Pour 40€ ça vous évitera bien des surprises INSERT INTO prefix_specific_price (id_specific_price, id_product, id_shop, id_currency, id_country, id_group, price, from_quantity, reduction, reduction_type, `from`, `to`) (SELECT NULL, id_product,0,0,0,0,'0.000000',1,10,'percentage','0000-00-00 00:00:00','0000-00-00 00:00:00' from prefix_category_product where id_category IN (select id_category from prefix_category where id_parent = 'id de la categorie' GROUP BY id_category) GROUP BY id_product ) ; prenez bien garde à contrôler vos groupes, id_currency, date de fin etc ... Edited July 12, 2012 by Peuh (see edit history) Link to comment Share on other sites More sharing options...
miiidooo-19 Posted July 12, 2012 Author Share Posted July 12, 2012 (edited) merci pour les infos j'ai essayé d'exécuter la première Requête mais ça ne marche pas Update ps_product set reduction_percent = 10 , reduction_price = 00 reduction_from = '2012-07-12 14:00:00', reduction_to = '2012-07-17 00:00:00' where id_product in (select id_product from ps_category_product where id_category IN (select id_category from ps_category where id_parent = '6' GROUP BY id_category) GROUP BY id_product ) et j'ai le message d'erreur suivant : #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'reduction_from = '2012-07-12 14:00:00', reduction_to = '2012-07-17 00:00:00' whe' at line la requete je l'ai exécuté sur phpmyadmun Edit : le problème vien de fait que j'ai oublié une , entre 00 et reduction_from j'ai eu les résultats que je voulais j’espère que ça ne laissera pas une erreur invisible dans le système de fonctionnement de la boutique Edited July 12, 2012 by miiidooo-19 (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now