最近写的功能中有这样一个小功能,根据数据库查询此库中是否有某表,如果有,查询某表下面的某个字段的详细信息

 其中一种是...
select ATC.OWNER,
atC.TABLE_NAME,
ATC.COLUMN_NAME,
ATC.DATA_TYPE,
ATC.DATA_LENGTH,
ATC.NULLABLE,
ucc.comments
from (select ATC.OWNER,
atC.TABLE_NAME,
ATC.COLUMN_NAME,
ATC.DATA_TYPE,
ATC.DATA_LENGTH,
ATC.NULLABLE
from all_tab_columns ATC
where ATC.TABLE_NAME = '要查询的字段名'
and ATC.COLUMN_NAME in ('要查询的字段名','要查询的字段名','要查询的字段名')) atc
left outer join user_col_comments ucc on atc.table_name = ucc.table_name
and atc.column_name =
ucc.column_name
left outer join user_tab_comments utc on atc.table_name = utc.table_name
order by atc.table_name, atc.column_name;

还有一种是

 1 SELECT USER_TAB_COLS.TABLE_NAME   as 表名,
2 USER_TAB_COLS.COLUMN_NAME as 列名,
3 USER_TAB_COLS.DATA_TYPE as 数据类型,
4 USER_TAB_COLS.DATA_LENGTH as 长度,
5 USER_TAB_COLS.NULLABLE as 是否为空,
6 USER_TAB_COLS.COLUMN_ID as 列序号,
7 user_col_comments.comments as 备注
8 FROM USER_TAB_COLS
9 inner join user_col_comments on user_col_comments.TABLE_NAME =
10 USER_TAB_COLS.TABLE_NAME
11 and user_col_comments.COLUMN_NAME =
12 USER_TAB_COLS.COLUMN_NAME where user_col_comments.TABLE_NAME='数据库名' AND USER_TAB_COLS.COLUMN_NAME in ('要查询的字段名','要查询的字段名','要查询的字段名')
13

  

查询某库下面的某表全部字段

 select
ut.COLUMN_NAME,--字段名称
uc.comments,--字段注释
ut.DATA_TYPE,--字典类型
ut.DATA_LENGTH,--字典长度
ut.NULLABLE--是否为空
from user_tab_columns ut
inner JOIN user_col_comments uc
on ut.TABLE_NAME = uc.table_name and ut.COLUMN_NAME = uc.column_name
where ut.Table_Name='某表名'
order by ut.column_name

  

以上SQL都已经运用到程序中,可以直接贴到sql中用

欢迎大家提出问题

ORACLE 查询某表中的某个字段的类型,是否为空,是否有默认值等的更多相关文章

  1. Linq 中查询一个表中指定的字段

    //Linq中查询一个表中指定的几个字段: ); // FindAllItems()为查询对应表的所有数据的方法: // Where 里面为查询条件 // Select 为查询的筛选条件 new{} ...

  2. 一条SQL语句查询两表中两个字段

    首先描述问题,student表中有字段startID,endID.garde表中的ID需要对应student表中的startID或者student表中的endID才能查出grade表中的name字段, ...

  3. mysql 用sql语句查询一个表中的所有字段类型、注释

    SELECT column_name,column_comment,data_type FROM information_schema.columns WHERE table_name='表名' AN ...

  4. oracle查询A表中主键都被哪些表引用了?

    select r.TABLE_NAME from USER_CONSTRAINTS p, USER_CONSTRAINTS r where p.TABLE_NAME = 'IAM_AUDIT_FIND ...

  5. [oracle]查询一个表中数据的插入时间

    select to_char(scn_to_timestamp(ORA_ROWSCN),'yyyy-mm-dd hh24:mi:ss') insert_time from tablename;

  6. sql查询数据库表中重复记录方法

    1.查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 代码如下: select * from people where peopleId in (select peopleId ...

  7. 一个表中多个字段对应另一个表的ID(SQL查询)

    A数据表中多个字段对应B数据表的ID, 现在要把B表的其他字段一起查询出来 一.数据表: 1.SPEED_DETECTION_ROAD 它的 START_POINT_ID 和 END_POINT_ID ...

  8. SQL查询一个表中类别字段中Max()最大值对应的记录

      SQL查询一个表中类别字段中Max()最大值对应的记录 SELECT A.id, A.name, A.version FROM   DOC A, (SELECT id, MAX(version)  ...

  9. oracle赋值问题(将同一表中某一字段赋值给另外一个字段的语句)

    将同一表中某一字段赋值给另外一个字段的语句update jxc_ckmx ckmx1 set ckmx1.ddsl = (select ckmx2.sl from jxc_ckmx ckmx2 whe ...

随机推荐

  1. 解决Dynamics 365使用JS调用Web API时报no property value was found in the payload 错误。

    摘要: 微软动态CRM专家罗勇 ,回复323或者20190421可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me! 碰到如下报错: message: "An er ...

  2. linux中添加快捷命令

    例如我们需要ssh的时候,每次都要ssh ninetripod@10.0.0.11 -p 12345,这样显然很麻烦. 我们可以vim ~/.bashrc在里面添加alias ssh_='ssh ni ...

  3. CASE 表达式

    通过本篇文章我们来学习一下CASE表达式的基本使用方法. CASE表达式有简单 CASE表达式(simple case expression)和搜索 CASE表达式(searched caseexpr ...

  4. golang 变量定义

    package main import "fmt" var luckyNum = 6 var luckyStr = "love" //myNum := 6 // ...

  5. Windows Server 2016-PS筛选导出用户邮箱属性包含某字段列表

    生产环境中我们往往会遇到以多个邮箱别名结尾的情况,如何快速导出当前域用户邮箱以某字段或后缀结尾的用户列表信息变得尤为重要,本例简单汇总下如何通过Powershell快速筛选出当前邮箱信息包含azure ...

  6. Jmeter入门篇

    下载Jmeter:http://jmeter.apache.org/download_jmeter.cgi 安装后双击bin目录下的jmeter.bat文件启动jmeter 先看下怎么创建一个测试计划 ...

  7. webpack打包nodejs项目(前端代码)

    PS.若本文没有帮到你可以看看我的进阶版点此前往 适用情况 首先说明,此情况不具备普遍性.若你的情况与笔者类似那么希望这篇文章能够帮到你. 我的项目情况是这样的:用node.js做后台,ejs做模板引 ...

  8. 如何用人工的方式将Excel里的一堆数字变成一个数组

    目的是抛砖引玉,有谁可以教教我如何吧Excle的数据导入MyEclipse么? 如果只有⑨个字符的话我肯定是直接人工输入的,然而这次有65536行乘以3组,遭不住啊. 一.数组之间要有逗号在B列右键, ...

  9. Vue(day6)

    一.webpack中常用的文件loader & 插件 由于版本存在变动,以下安装和配置都有可能发生变化,请以官方文档为准. 1.html-webpack-plugin插件 html-webpa ...

  10. Java相关面试题总结+答案(二)

    [容器] 18. Java 容器都有哪些? 19. Collection 和 Collections 有什么区别? Collection 是一个集合接口,它提供了对集合对象进行基本操作的通用接口方法, ...