获取orcale数据库中某张表的所有字段名、某个字段名、将某个字段名用别名表示并查询数据、某些字段名,给到查询结果

1、获取某张表的所有字段名

select column_name from all_tab_columns 
where table_name='YX_JMDDL'

查询结果如上图所示,用于查询某张表中所有字段
查询结果如图1所示

2、知道表中某个字段,需要把该字段在查询结果中显示时:

select column_name from 
(select column_name from all_tab_columns where table_name='YX_JMDDL') 
where column_name='CONS_NO'

查询结果如下图2所示需要把字段名CONS_NO在查询结果中显示出来
查询结果如图2所示
3、需要查询表中某些个字段的数据,返回查询结果时想用别名表示该字段名时:

SELECT T.id as ydxxId, T.cons_no as Value1 
FROM YYJC_FX.YX_JMDDL T 
WHERE T.YD_STATUS IS NULL  AND NVL(T.IS_BMD, 2) IN (0,2) 
and to_date(cycle,'yyyyMM') >=to_date('201904' ,'yyyyMM') 
and to_date(cycle,'yyyyMM') <=to_date('202104' ,'yyyyMM') 
and  dsbm= '61401'

查询结果如下图3所示,id字段名的别名为ydxxId、cons_no字段名的别名为Value1
图3 所示为别名显示所查字段名的数据
4、可以将某个字段的数据查出用别名显示,并把该字段名用别名显示在该列数据之前,sql如下:

SELECT T.id as ydxxId, 
(select column_name from 
(select column_name from all_tab_columns where table_name='YX_JMDDL') 
where column_name='CONS_NO') 
as key1 ,T.cons_no as value1 
FROM YYJC_FX.YX_JMDDL T 
WHERE T.YD_STATUS IS NULL  AND NVL(T.IS_BMD, 2) IN (0,2) 
and to_date(cycle,'yyyyMM') >=to_date('201904' ,'yyyyMM') 
and to_date(cycle,'yyyyMM') <=to_date('202104' ,'yyyyMM') 
and  dsbm= '61401'

如下图4所示为该sql语句查询结果,id别名为ydxxId,column_name 别名为key1,表示字段名,cons_no别名为value1,表示该字段下对映数据
图4所示为字段名和字段数据一起出现于查询结果
5、升级版的第4步,查询多个字段

select T.id as ID,
(select column_name from (select column_name from all_tab_columns 
where table_name='YX_CTDL') where column_name='TG_ID') as fileKay1 ,
T.TG_ID as fileValue1 ,
(select column_name from (select column_name from all_tab_columns 
where table_name='YX_CTDL') where column_name='MP_NO') as fileKay2 , 
T.MP_NO as fileValue2 ,
(select column_name from (select column_name from all_tab_columns 
where table_name='YX_CTDL') where column_name='METER_ID') as fileKay3 , 
T.METER_ID as fileValue3 
FROM YYJC_FX.YX_CTDL T 
WHERE T.YD_STATUS IS NULL  AND NVL(T.IS_BMD, 2) IN (0,2) 
and  dsbm= '61401' order by cycle desc

如下图5所示为id和三个字段数据及各字段名的查询结果显示
图5显示id和三个字段数据及各字段名查询结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值