Requête MySQL avancée : mise à jour de tables avec des données provenant de plusieurs sources
Envisagez un scénario dans lequel vous devez mettre à jour une table dans MySQL avec des données de une autre table connexe. Pour y parvenir, vous pouvez exploiter la puissance des jointures SQL. En utilisant cette technique, il est possible de fusionner de manière transparente les informations de différentes tables, vous permettant ainsi d'effectuer des tâches complexes de manipulation de données.
Dans ce cas précis, vous cherchez à mettre à jour la colonne « email » dans le dossier « entreprise ». table avec les valeurs 'email' correspondantes de la table 'people'. La connexion entre les deux tables est établie via la colonne 'business_id'.
Pour accomplir cette tâche efficacement, vous pouvez utiliser la requête SQL suivante :
<code class="sql">UPDATE business b, people p SET b.email = p.email WHERE b.business_id = p.business_id AND p.sort_order = '1' AND b.email = ''</code>
Cette requête utilise une jointure de table pour connecter les tables 'business' (b) et 'people' (p) en fonction de la colonne commune 'business_id'. La condition 'sort_order = '1'' garantit que seule l'adresse e-mail avec l'ordre de tri le plus bas est utilisée pour mettre à jour la table 'business'. De plus, la requête ne met à jour que les lignes où la colonne « email » de la table « business » est vide ('').
En exécutant cette requête, vous mettrez à jour avec succès la colonne « email » dans la table « business ». ' avec les adresses e-mail appropriées de la table 'personnes', vous permettant de maintenir la cohérence et l'intégrité des données sur plusieurs tables.
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!