如何在表中查找列名

7
我正在尝试在ORACLE SQL Developer中查找一个非常大的表中的列,但是通过视觉查找真的很困难。
有没有什么简单的方法可以找到表中的列?
例如,在DBeaver中,只需按Tab,然后按Ctrl+f即可。
请参考以下截图: enter image description here
6个回答

8

Oracle有一个很棒的数据字典。大多数情况下,编写访问其视图的查询甚至比使用IDE功能更快。

您可以从视图ALL_TAB_COLUMNS获取列。

SELECT *
FROM   ALL_TAB_COLUMNS
WHERE  TABLE_NAME = :your_table_name
AND    COLUMN_NAME LIKE '%YOUR_SEARCH_STRING%'

关于SQL开发人员,您可以从连接树中打开表格,转到“列”选项卡,然后只需使用“编辑 -> 查找(Ctrl/Cmd + F)”即可。在4.0.2.15版本中适用于我。

2

相比于IDE提供的按钮和点击操作,我更喜欢编写查询语句,因为这样更快。

如果您也这样想,可以尝试使用以下方法:

通过您所使用的SQL工具尝试此方法。

select table_name from all_tab_columns where column_name = 'PICK_COLUMN';

如果您拥有数据库管理员权限

select table_name from dba_tab_columns where column_name = 'PICK_COLUMN';

如果您不确定列名,可以在当前查询中添加LIKE语句。

例如:

select table_name from all_tab_columns where column_name LIKE '%PICK_COLUMN%';

2

SQL Developer数据网格中没有搜索功能,无法查找/导航到特定列,但我将其作为功能请求添加。

您可能会发现单个记录视图对浏览非常宽的记录很方便。

enter image description here


你能提供一个链接或者状态更新来说明你的功能请求吗?我也希望有一个功能可以快速查找或突出显示大型表格中的列。 - user1438038

1
在工具栏上,单击“查看”->“查找DB对象”,现在选择连接、类型和要查找值的列(名称、类型和用途(全部))。表格将被显示,选择要查找字段的列所在的表格。

dbeaver search


0

在数据网格中右键单击列标题,然后您会看到一个名为“列”的菜单,您可以在其中筛选要显示的列。


谢谢您的快速回复,但是我仍然无法在列名/列名子字符串中进行搜索。 - snir.tur

0
  1. 右键单击您的连接名称。
  2. 然后在上下文菜单中单击“查找DB对象”。
  3. 它会带您到一个文本框。写下您的列名
  4. 并勾选“列”复选框。
  5. 然后按“Enter”或单击“Go”。

然后,SQL开发人员将搜索您的列,并显示结果[表名与列名]。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接