Maison >développement back-end >Golang >Comment puis-je mettre à jour efficacement plusieurs lignes dans PostgreSQL à l'aide d'une seule requête ?
Mise à jour groupée de plusieurs lignes avec une seule requête PostgreSQL
La mise à jour de plusieurs lignes dans une base de données PostgreSQL à l'aide de Go peut être réalisée efficacement avec un seul SQL déclaration. Cette approche offre un moyen pratique de mettre à jour plusieurs enregistrements en une seule fois, réduisant ainsi le nombre de requêtes requises et améliorant les performances.
Pour effectuer des mises à jour groupées, nous pouvons utiliser une table dérivée, qui est une table temporaire créée dans le portée d’une requête. Cela nous permet de spécifier les valeurs des lignes à mettre à jour. Voici comment procéder :
UPDATE t SET column_a = v.column_a, column_b = v.column_b FROM (VALUES (1, 'FINISH', 1234), (2, 'UNFINISH', 3124) ) v(id, column_a, column_b) WHERE v.id = t.id;
Dans cet exemple, nous créons une table dérivée nommée v avec trois colonnes : id, column_a et column_b. Nous fournissons des valeurs pour deux lignes, qui représentent les mises à jour que nous souhaitons effectuer. La clause WHERE fait correspondre la colonne id de la table dérivée avec la colonne id de la table que nous mettons à jour (t).
Cette approche facilite l'ajout de lignes supplémentaires à mettre à jour, simplement en ajoutant plus de lignes à la table dérivée. Ceci est moins sujet aux erreurs que l’écriture de plusieurs instructions de mise à jour individuelles.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!