Maison >base de données >tutoriel mysql >Comment rechercher des tables avec des colonnes correspondant à un nom spécifique en SQL ?
Trouver la table contenant la colonne avec le nom spécifié
Les tables d'une base de données contiennent des colonnes avec des noms spécifiques. Utile pour rechercher toutes les tables contenant une colonne avec un nom spécifique. Cette requête permet d'identifier ces tables :
Requête SQL :
<code class="language-sql">SELECT c.name AS 'ColumnName' ,(SCHEMA_NAME(t.schema_id) + '.' + t.name) AS 'TableName' FROM sys.columns c JOIN sys.tables t ON c.object_id = t.object_id WHERE c.name LIKE '%MyName%' ORDER BY TableName ,ColumnName;</code>
Instructions :
Cette requête rejoint les tables sys.columns
et sys.tables
pour trouver le nom de colonne (c.name) et le nom de table (TableName) qui correspondent au nom spécifié (« MyName »). La fonction SCHEMA_NAME
est utilisée pour inclure le nom du schéma dans le résultat TableName
. Les tableaux contenant plusieurs colonnes correspondantes peuvent être facilement identifiés en triant par TableName
et ColumnName
.
Fonctions étendues :
Vous pouvez également inclure des vues dans la recherche en remplaçant le tableau sys.tables
par sys.objects
:
<code class="language-sql">SELECT COLUMN_NAME AS 'ColumnName' ,TABLE_NAME AS 'TableName' FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME LIKE '%MyName%' ORDER BY TableName ,ColumnName;</code>
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!