oracle查询数据结构滤涉及的sql语句

  • 背景:去客户数据库查询表数据。了解表结构以及表字段及索引等信息
  • oracle数据库
sql 复制代码
SELECT 
  t.OWNER AS "用户名",
  t.TABLE_NAME AS "表名",
  c.COMMENTS AS "表说明"
FROM 
  ALL_TABLES t
LEFT JOIN 
  ALL_TAB_COMMENTS c 
  ON t.OWNER = c.OWNER 
  AND t.TABLE_NAME = c.TABLE_NAME
  AND c.TABLE_TYPE = 'TABLE'
WHERE 
  (t.OWNER = UPPER('HIS')  or t.OWNER = UPPER('SXEMR'))
  AND t.TABLE_NAME NOT LIKE 'BIN$%' 
  --AND (c.COMMENTS like '%住%' or c.COMMENTS like '%转%' )
  AND (c.COMMENTS like '%住院%' )
ORDER BY 
  c.COMMENTS;

select * from HIS.FIN_IPR_INMAININFO

SELECT 
  t.OWNER AS "用户名",
  t.TABLE_NAME AS "表名",
  c.COMMENTS AS "表说明"
FROM 
  ALL_TABLES t
LEFT JOIN 
  ALL_TAB_COMMENTS c 
  ON t.OWNER = c.OWNER 
  AND t.TABLE_NAME = c.TABLE_NAME
  AND c.TABLE_TYPE = 'TABLE'
WHERE 
  t.OWNER = UPPER('LIS')  -- 替换为实际用户名
  AND t.TABLE_NAME NOT LIKE 'BIN$%'  -- 排除回收站中的表
  and t.TABLE_NAME  like 'LIS_RE%'
ORDER BY 
  c.COMMENTS;


SELECT 
  t.OWNER AS "用户名",
  t.TABLE_NAME AS "表名",
  c.COMMENTS AS "表说明"
FROM 
  ALL_TABLES t
LEFT JOIN 
  ALL_TAB_COMMENTS c 
  ON t.OWNER = c.OWNER 
  AND t.TABLE_NAME = c.TABLE_NAME
  AND c.TABLE_TYPE = 'TABLE'
WHERE 
  t.OWNER = UPPER('SXEMR')  -- 替换为实际用户名
  AND t.TABLE_NAME NOT LIKE 'BIN$%'  -- 排除回收站中的表
  -- and c.COMMENTS  like '%诊断%'
ORDER BY 
   c.COMMENTS asc;

SELECT
    t.TABLE_NAME AS "表名",
    c.COLUMN_NAME AS "字段名",
    com.COMMENTS AS "字段描述"
FROM
    ALL_TABLES t
JOIN
    ALL_TAB_COLUMNS c ON t.OWNER = c.OWNER AND t.TABLE_NAME = c.TABLE_NAME
LEFT JOIN
    ALL_COL_COMMENTS com ON c.OWNER = com.OWNER 
                          AND c.TABLE_NAME = com.TABLE_NAME 
                          AND c.COLUMN_NAME = com.COLUMN_NAME
WHERE
    t.OWNER = 'HIS' 
  AND c.TABLE_NAME = 'FIN_IPR_INMAININFO'
ORDER BY
    t.TABLE_NAME,
    c.COLUMN_ID;  

select * from ALL_TAB_COLUMNS;

SELECT
    t.TABLE_NAME AS "表名",
    c.COLUMN_NAME AS "字段名",
    com.COMMENTS AS "字段描述",
    c.DATA_TYPE AS "字段类型"
FROM
    ALL_TABLES t
JOIN
    ALL_TAB_COLUMNS c ON t.OWNER = c.OWNER AND t.TABLE_NAME = c.TABLE_NAME
LEFT JOIN
    ALL_COL_COMMENTS com ON c.OWNER = com.OWNER 
                          AND c.TABLE_NAME = com.TABLE_NAME 
                          AND c.COLUMN_NAME = com.COLUMN_NAME
WHERE
    t.OWNER = 'HIS'
  and t.TABLE_NAME = 'FIN_IPR_INMAININFO'
ORDER BY
    t.TABLE_NAME,
    c.COLUMN_ID; 


SELECT T.PATIENT_NO AS 住院号,T.CARD_NO AS 就诊卡号,T.PATIENT_NO AS 住院号 FROM HIS.FIN_IPR_INMAININFO T


SELECT 
    a.constraint_name, 
    a.table_name,
    a.constraint_type,
    b.column_name, 
    b.position
FROM 
    all_constraints a, 
    all_cons_columns b
WHERE 
    a.constraint_name = b.constraint_name
    AND a.constraint_type = 'P'
    AND a.table_name = 'FIN_IPR_INMAININFO';
相关推荐
SAP小崔说事儿6 小时前
在数据库中将字符串拆分成表单(SQL和HANA版本)
java·数据库·sql·sap·hana·字符串拆分·无锡sap
川贝枇杷膏cbppg7 小时前
asmcmd
数据库·oracle
MatrixOrigin7 小时前
在数据库里玩“平行宇宙”:MatrixOne Data Branch 让数据也拥有Git 的分支/合并/对比/回滚(含跨集群同步)
git·sql·数据分析
surtr18 小时前
关系代数与关系型数据库
数据库·sql·数据库系统
画***林9 小时前
雷家林诗歌集录一英文版Collected Poems of Lei Jialin, Volume I (English Edition)
数据库·sql
MAHATMA玛哈特科技10 小时前
液压校平机:金属的“液态风筝收线器”
oracle·自动化·矫平机·液压矫平机
vortex510 小时前
ORM是什么?如何理解ORM?ORM的优缺点?
java·数据库·sql·mysql·oracle·orm
l1t11 小时前
在duckdb 递归CTE中实现深度优先搜索DFS
sql·算法·深度优先·duckdb·cte
xiaolang_8616_wjl11 小时前
c++超级细致的基本框架
开发语言·数据结构·c++·算法
晨曦54321011 小时前
MySQL8.0窗口函数实战指南
sql