Suchen Sie die Tabelle, die die Spalte mit dem angegebenen Namen enthält
Tabellen in einer Datenbank enthalten Spalten mit bestimmten Namen. Nützlich, um alle Tabellen zu finden, die eine Spalte mit einem bestimmten Namen enthalten. Mit dieser Abfrage können Sie diese Tabellen identifizieren:
SQL-Abfrage:
<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>
Anleitung:
Diese Abfrage verknüpft die Tabellen sys.columns
und sys.tables
, um den Spaltennamen (c.name) und den Tabellennamen (TableName) zu finden, die mit dem angegebenen Namen ('MyName') übereinstimmen. Die Funktion SCHEMA_NAME
wird verwendet, um den Schemanamen in das Ergebnis TableName
einzuschließen. Tabellen mit mehreren übereinstimmenden Spalten können durch Sortieren nach TableName
und ColumnName
leicht identifiziert werden.
Erweiterte Funktionen:
Sie können Ansichten auch in die Suche einbeziehen, indem Sie die Tabelle sys.tables
durch sys.objects
ersetzen:
<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>
Das obige ist der detaillierte Inhalt vonWie finde ich Tabellen mit Spalten, die einem bestimmten Namen in SQL entsprechen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!