Maison > Article > base de données > **Comment récupérer les données des lignes concernées après une requête UPDATE dans MySQL ?**
Combinaison de requêtes SELECT et UPDATE pour la récupération des données des lignes concernées dans MySQL
MySQL offre de puissantes fonctionnalités de requête, notamment la possibilité d'effectuer des opérations complexes. Un scénario courant consiste à combiner les requêtes SELECT et UPDATE pour récupérer les données affectées par l'opération de mise à jour. Cette approche peut rationaliser le traitement et éliminer le besoin de requêtes distinctes.
Dans ce cas particulier, l'objectif est de combiner deux requêtes : une instruction SELECT qui récupère les données en fonction de critères spécifiques et une instruction UPDATE qui modifie les lignes correspondantes. . En fusionnant ces requêtes, l'objectif est d'obtenir les données des lignes mises à jour en une seule opération.
Au départ, l'utilisateur a tenté d'utiliser une sous-requête, mais les résultats souhaités n'ont pas été obtenus. Cela a incité à explorer des méthodes alternatives, notamment une combinaison directe de SELECT et UPDATE sans sous-requête.
Solution : tirer parti des techniques SET et SELECT
Une solution ingénieuse a été découverte grâce à des recherches externes : en employant les techniques SET et SELECT, il est possible d'atteindre le résultat souhaité. L'extrait de code fourni illustre cette approche :
<code class="sql">SET @uids := null; UPDATE footable SET foo = 'bar' WHERE fooid > 5 AND ( SELECT @uids := CONCAT_WS(',', fooid, @uids) ); SELECT @uids;</code>
Cette solution utilise les étapes suivantes :
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!