使用特定数据类型查询Db中的所有主键

时间:2016-02-01 20:02:05

标签: sql database oracle plsql

我正在寻找使用DATE数据类型的数据库中的所有主键。有没有人知道列出TABLE_NAME PK及其数据类型的查询?谢谢

1 个答案:

答案 0 :(得分:1)

这包括主键,其中只有一个成员是DATE。

SELECT cols.table_name, cols.column_name, cols.position, cons.status, cons.owner, atc.DATA_TYPE
FROM all_constraints cons, all_cons_columns cols, all_tab_cols atc
WHERE cons.constraint_type = 'P'
AND cons.constraint_name = cols.constraint_name
AND cons.owner = cols.owner
AND cols.TABLE_NAME = atc.TABLE_NAME
AND cols.COLUMN_NAME = atc.COLUMN_NAME
AND cons.owner = atc.owner
AND atc.DATA_TYPE = 'DATE'
ORDER BY cols.table_name, cols.position;