ça tombe bien je suis bricoleur aussi
bon j'ai pas trop trop de temps alors je te propose une idée (ou plutot le fil de mes idées)
1) 1 seule requete pour insert/update
1 2
| INSERT INTO recherche (mot,compteur,categorie) VALUES ('xx",'1','bidule)
ON DUPLICATE KEY UPDATE compteur='qqch'; |
je m'explique :
cette structure permet de créer un enregistrement s'il n'existe pas et de le mettre à jour s'il existe 
(le ON DUPLICATE KEY UPDATE me fait penser qu'il faut peut etre avoir mis en clé le champ du mot de la recherche)
2) le compteur
mais reste le problème d'augmenter le compteur
alors on aurait peut être un truc du genre (c'est tordu mais je cherche à te le faire en une requete) en condition
compteur= '((SELECT compteur FROM recherche WHERE mot='xx')+1)'
En résumé (j'ai construit ma réponse petit à petit dsl)
1 2
| INSERT INTO recherche (mot,compteur,categorie) VALUES ('xx",'1','bidule)
ON DUPLICATE KEY UPDATE compteur= '((SELECT compteur FROM recherche WHERE mot='xx')+1)' |
je ne sais pas si la syntaxe va etre correcte mais le principe en une requête est de :
insérer ton mot avec 1 au compteur
sauf si le mot existe déjà là on met à jour l'enregistrement avec comme valeur pour le compteur celle d'avant+1
ça ressemblerait presque à de l'optimisation... mais vu que c'est moi ça risque de ne pas marcher dès le début.
Partager