Mise à jour efficace de plusieurs lignes MySQL avec des valeurs variées
Ce guide aborde le défi courant lié à la mise à jour de plusieurs lignes de base de données avec des valeurs uniques à l'aide d'une seule requête MySQL. Bien que plusieurs méthodes existent, cette approche offre clarté et efficacité.
Une approche plus claire utilisant les instructions CASE
La méthode conventionnelle, impliquant souvent des instructions IF()
imbriquées, devient lourde avec plusieurs conditions. Une alternative supérieure exploite le pouvoir des CASE
déclarations :
<code class="language-sql">UPDATE table_users SET cod_user = (CASE WHEN user_role = 'student' THEN '622057' WHEN user_role = 'assistant' THEN '2913659' WHEN user_role = 'admin' THEN '6160230' END), date = '12082014' WHERE user_role IN ('student', 'assistant', 'admin') AND cod_office = '17389551';</code>
Cette requête simplifiée utilise CASE
pour attribuer dynamiquement des valeurs cod_user
basées sur user_role
, tout en définissant simultanément date
sur une valeur cohérente pour toutes les lignes correspondantes.
Considérations clés
Cette approche combinée CASE
et WHERE
offre une solution structurée et facilement compréhensible pour mettre à jour plusieurs lignes avec des valeurs diverses dans MySQL.
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!