Heim >Datenbank >MySQL-Tutorial >Wie finde ich MySQL-Tabellen, die bestimmte Spalten enthalten?
Tabellen mit bestimmten Spalten in MySQL finden
Wenn Sie mit einer großen MySQL-Datenbank arbeiten und alle Tabellen identifizieren müssen, die bestimmte Spalten enthalten Spalten gibt es eine effiziente Methode, um diese Aufgabe zu erfüllen.
Um dies zu erreichen, können Sie eine SQL-Abfrage verwenden, die die Spalten untersucht INFORMATION_SCHEMA.COLUMNS-Tabelle. Diese Tabelle enthält Informationen zu allen Spalten in allen Tabellen in der Datenbank.
Abfrage zum Suchen von Tabellen
Die folgende SQL-Abfrage ruft alle Distinct ab Tabellennamen aus der Datenbank, deren Spalten mit den angegebenen Spaltennamen übereinstimmen:
SELECT DISTINCT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME IN ('<columnA>', '<columnB>') AND TABLE_SCHEMA='<database_name>';
In diesem Abfrage:
Wenn Sie beispielsweise alle Tabellen finden möchten, die entweder die Spalten „Alter“ oder „Name“ in der Datenbank „Benutzer“ haben, Sie würden Folgendes verwenden:
SELECT DISTINCT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME IN ('age', 'name') AND TABLE_SCHEMA='users';
Diese Abfrage gibt eine Liste aller Tabellen in der Datenbank „Benutzer“ zurück, die entweder die Spalten „Alter“ oder „Name“ enthalten.
Das obige ist der detaillierte Inhalt vonWie finde ich MySQL-Tabellen, die bestimmte Spalten enthalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!