Problème
Notre objectif est de récupérer toutes les tables qui contiennent la colonne «First_name» dans la base de données Sakila. Explorons les méthodes que nous pouvons utiliser pour y parvenir.
Solution
Nous pouvons utiliser l'information_schema.Table des colonnes pour récupérer les tables contenant la colonne "First_name". Nous pouvons ensuite filtrer les résultats par le schéma pour obtenir les tables uniquement disponibles dans la base de données Sakila.
La requête est comme indiqué:
sélectionnerLa requête ci-dessus devrait récupérer les tables contenant la colonne «First_name» dans la base de données Sakila. La sortie résultante est comme indiqué:
Dans ce cas, l'acteur, l'acteur_info, le client et les tables du personnel contiennent la colonne «First_name».
Nous pouvons également utiliser la fonction de base de données () pour filtrer les tables dans notre base de données actuellement sélectionnée. Exemple:
Utilisez Sakila;La fonction de base de données () renvoie la base de données actuellement sélectionnée. Dans notre cas, cette base de données est définie sur Sakila, comme indiqué dans l'instruction Utilisation.
Solution 2
Vous pouvez également utiliser l'opérateur similaire pour récupérer les tables contenant une colonne spécifique. Un exemple est comme indiqué:
sélectionnerDans ce cas, comme nous ne filtrons pas pour une base de données particulière, la commande renvoie toutes les tables de toutes les bases de données, comme indiqué dans la sortie ci-dessous:
Conclusion
Dans cet article, vous avez découvert comment récupérer les tables qui contiennent une colonne spécifique dans le serveur MySQL.
Codage heureux!!