Abrufen von Tabellen mit Fremdschlüsseln, die auf eine bestimmte Tabellenspalte verweisen und Werte enthalten
Im Zusammenhang mit relationalen Datenbanken ist es häufig erforderlich, sie zu identifizieren Tabellen, die über Fremdschlüssel verfügen, die auf eine bestimmte Tabellen-Spalten-Kombination verweisen, insbesondere wenn die Anzahl der Tabellen in der Datenbank unbekannt ist. Um dies zu erreichen, können wir die folgende Abfrage verwenden:
SELECT * FROM information_schema.KEY_COLUMN_USAGE WHERE REFERENCED_TABLE_NAME = 'X' AND REFERENCED_COLUMN_NAME = 'X_id';
Diese Abfrage nutzt die Tabelle KEY_COLUMN_USAGE in der Datenbank information_schema. Es wird eine Liste von Tabellen zurückgegeben, deren Fremdschlüssel auf die Spalte X_id der Tabelle X verweisen. Um sicherzustellen, dass nur Tabellen mit ausgefüllten Fremdschlüsselwerten abgerufen werden, können wir die Ergebnisse weiter filtern, indem wir eine zusätzliche Bedingung hinzufügen:
SELECT * FROM information_schema.KEY_COLUMN_USAGE WHERE REFERENCED_TABLE_NAME = 'X' AND REFERENCED_COLUMN_NAME = 'X_id' AND NOT ISNULL(TABLE_NAME);
Diese überarbeitete Abfrage eliminiert Tabellen mit Nullwerten in ihren Fremdschlüsselspalten und stellt eine bereit umfassende Liste von Tabellen, die sowohl Fremdschlüssel enthalten, die auf X.X_id verweisen, als auch Nicht-Null-Werte in diesen Fremdschlüsseln.
Das obige ist der detaillierte Inhalt vonWie finde ich Tabellen mit Fremdschlüsseln, die auf eine bestimmte Tabellenspalte verweisen und Werte enthalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!