Maison > base de données > tutoriel mysql > Comment puis-je exécuter des requêtes de base de données basées sur les résultats d'une autre base de données ?

Comment puis-je exécuter des requêtes de base de données basées sur les résultats d'une autre base de données ?

Mary-Kate Olsen
Libérer: 2024-12-20 18:23:11
original
419 Les gens l'ont consulté

How Can I Execute Database Queries Based on Results from Another Database?

Exécuter des requêtes de base de données basées sur les données d'une autre base de données

Pour exécuter une requête dans une base de données en fonction des résultats d'une requête provenant d'une autre base de données base de données, plusieurs approches peuvent être utilisées :

Transformation de recherche

Par en ajoutant une transformation de recherche, vous pouvez récupérer la liste des identifiants de la première base de données. La requête dans la recherche doit renvoyer la colonne ID. Bien que cette méthode fournisse les valeurs de recherche, elle ne filtre pas les lignes en fonction des identifiants obtenus.

Pour filtrer les lignes avec la condition IN, utilisez les options de sortie d'erreur de recherche :

  • Ignorer la ligne : Annulez les colonnes ajoutées à partir de la recherche. Utilisez une division conditionnelle pour supprimer les lignes avec des valeurs nulles dans ces colonnes.
  • Redirection de ligne : Envoyez toutes les lignes à la sortie d'erreur, en filtrant efficacement les lignes.

Tâche de script

Pour éviter de charger toutes les données, utilisez une tâche de script. Cette technique fonctionne en mémoire et peut créer une liste d'identifiants séparés par des virgules pour la comparaison IN. La commande SQL résultante est stockée dans une variable et utilisée comme source pour les opérations ultérieures.

Exécuter la tâche SQL

En utilisant une tâche d'exécution SQL, créez la clause IN de manière dynamique . La requête génère un jeu de résultats unique contenant la commande SQL modifiée avec les ID séparés par des virgules. Cet ensemble de résultats sert de source pour la tâche DataFlow suivante.

Pensez à la gestion des types de données, en particulier lorsqu'il s'agit de valeurs de chaîne. Placez les valeurs de chaîne entre guillemets simples pour éviter les vulnérabilités d’injection SQL. De plus, assurez-vous que la propriété Delay Validation de la tâche DataFlow est définie sur True pour une exécution correcte des requêtes dynamiques.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal