如何在MySQL Workbench的所有表中搜索特定的列名?


14

在MySQL Workbench中,是否可以在所有表​​中搜索特定的列名?

(在右上角的字段中编写要查找的字符串不会执行任何操作)。

谢谢。

Answers:


21

您可以特别使用INFORMATION_SCHEMA数据库和COLUMNS表的使用示例:

SELECT 
    table_name, 
    column_name, 
    data_type,
    ordinal_position

FROM  INFORMATION_SCHEMA.COLUMNS 

WHERE table_schema = 'myDatabase'     --- the database you want to search 
  AND column_name = 'name' ;          --- or: column_name LIKE '%name%' 

8

要扩展@ypercube的答案(他得到+1),如果您不知道表所在的数据库,请执行以下操作:

SELECT 
    table_schema,
    table_name, 
    column_name, 
    data_type,
    ordinal_position

FROM  INFORMATION_SCHEMA.COLUMNS 

WHERE column_name = 'name' ;          --- or: column_name LIKE '%name%' 

3

在MySQL Workbench(v6.3)(Windows)中:

  • 用鼠标右键单击任何表。
  • 延迟后,左键单击“表维护...”。
  • 左键单击“列”选项卡。

这显示了表格,列,...的可排序网格。

  • 左击网格标题中的“列”以对所有列名进行排序,而与表无关。因此,相同名称的列在一起。

遗憾的是,排序不稳定。因此,最初按表排序,然后列不会在一组相同的列名中保留表名的顺序。

网格打开速度很慢,但是查找列组很快。

它不会跨数据库搜索。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.