如何在oracle sql中列出具有特定列的模式中的所有表?

时间:2015-02-16 05:47:12

标签: sql oracle oracle10g

我找到了使用此查询的所有表的列表 -

SELECT DISTINCT OBJECT_NAME 
  FROM USER_OBJECTS
 WHERE OBJECT_TYPE = 'TABLE' 

但我需要列出所有列名为starttime_datestarttime的表格。

2 个答案:

答案 0 :(得分:2)

您可以使用USER_TAB_COLS视图。

例如,

SQL> select table_name, column_name, data_type from user_tab_cols where column_name ='DEPTNO';

TABLE_NAME COLUMN_NAM DATA_TYPE
---------- ---------- ----------
DEPT       DEPTNO     NUMBER
EMP        DEPTNO     NUMBER

SQL>

你可以试试,

select * 
   from user_tab_cols
 where column_name in ('STARTTIME_DATE', 'STARTTIME');

答案 1 :(得分:0)

首先,您连接任何架构,然后可以尝试使用此SQL。

例如:

SELECT TABLE_NAME,
       COLUMN_NAME,
       DATA_TYPE,
       DATA_LENGTH,
       NULLABLE
  FROM all_tab_columns
 WHERE OWNER = 'schema_name' and column_name = 'column_name';