Archive(s) pour juillet 2012

Insérer des entrées provenant d’une sous-requête MySQL

mardi 10 juillet 2012

Dans une phase de développement d’un outil, nous pouvons être amenés à copier des données d’une table de notre base de données à une autre pour mieux scindez nos données ou au contraire les regrouper.
Dans ce cas, notre cerveau, formaté à réfléchir en PHP pour intéragir avec MySQL, va nous pousser à écrire quelques lignes pour:

  • récupérer les données à traiter (1 requête),
  • puis, pour chacune de ces données, les insérer dans le nouvelle table (n requêtes)

Pour un déménagement de n entrées, on aura donc n+1 requêtes MySQL à lancer.

Que diriez-vous de n’en lancer qu’une seule et, cerise sur la gâteau, de ne pas avoir à coder une seule ligne PHP?

Jugez plutôt:

  1. span class= »st0″>’blabla’)

Rien ne vous empêche évidemment d’avoir une sous-requête peu plus complexe qui prend les entrées avec l’id le plus bas parmi les doublons d’une série répondant à une certaine conditions pour insérer dans une table avec ‘valeur_commune’ à toutes les nouvelles entrées et en y indiquant le timestamp Unix actuel.

  1. span class= »st0″>’valeur_commune’‘remplie’

Merci à Rob Searles pour son article qui m’a fait découvrir cette « technique »