Une formule MySQL élégante

Que j’aime les choses concises et bien écrites… En littérature comme en programmation (pour moi c’est la même chose 😉 )

Au détour d’un développement qui m’amène à explorer, dans le code du coeur de Prestashop, le mécanisme de construction d’une règle panier, je suis tombée sur cette jolie phrase :

Une rapide explication du contexte : la table cart_rule_combination associe des règles paniers pour les rendre cumulables dans le panier de l’utilisateur.
Le code ci-dessus permet d’ajouter dans cette table autant d’associations que nécessaire entre la règle panier en cours de construction (en l’occurrence définie comme cumulable) et des règles existantes, restrictives au niveau du cumul.

Du 3 en 1, en pur MySQL, là où on aurait vite fait d’avoir recours à trois étapes avec une solution hybride PHP / MySQL :

1- sélection des règles restrictives existantes dans la base de données
2- itération en PHP
3- insertion individuelle

Réflexe à conserver !