sql >> Databáze >  >> RDS >> Mysql

Jak najít všechny tabulky, které mají cizí klíče, které odkazují na konkrétní table.column a mají hodnoty pro tyto cizí klíče?

Tady to je:

USE information_schema;
SELECT *
FROM
  KEY_COLUMN_USAGE
WHERE
  REFERENCED_TABLE_NAME = 'X'
  AND REFERENCED_COLUMN_NAME = 'X_id';

Pokud máte více databází s podobnými názvy tabulek/sloupců, možná budete chtít omezit svůj dotaz na konkrétní databázi:

SELECT *
FROM
  KEY_COLUMN_USAGE
WHERE
  REFERENCED_TABLE_NAME = 'X'
  AND REFERENCED_COLUMN_NAME = 'X_id'
  AND TABLE_SCHEMA = 'your_database_name';


  1. Jaký je nejlepší způsob, jak velké první písmeno každého slova v řetězci použít na SQL Server

  2. Vzory šablon a modifikátory pro číselné formátování v PostgreSQL

  3. Vysvětlení operátora MariaDB MINUS

  4. Proč Oracle používá DBMS_STATS.GATHER_TABLE_STATS?