首页 > 数据库 > ORACLE long类型转字符 LONG_TO_CHAR()

ORACLE long类型转字符 LONG_TO_CHAR()

时间:2022-08-26 09:01:17浏览次数:162  
标签:char clob column long CUX CHAR LONG sql

 ORACLE 11G   long类型转字符 ,

自定义函数: CUX_LONG_TO_CHAR() 

create   function cux_long_to_char(p_additional_where in varchar2,
                            p_table_name       in varchar2,
                            p_long_column      in varchar2) return varchar2 is
  
    v_sql  varchar2(2000);
    v_clob clob;
  
    v_clob_to_char varchar2(2000);
  
  begin
  
    v_sql := 'select ' || p_long_column || ' from ' || p_table_name ||
             ' where 1=1 ' || ' and ' || p_additional_where;
  
    v_sql := 'declare 
  begin 
    for dat in (' || v_sql || ') loop
      :v_clob := dat.' || p_long_column || ';
      end loop;
      end;';
  
    --v_clob := v_sql;
    --execute immediate v_sql into v_clob;
    execute immediate v_sql
      using out v_clob;
  
    v_clob_to_char := to_char(v_clob);
    v_clob_to_char := trim(v_clob_to_char);
  
  
    return v_clob_to_char;
  
  exception
    when others then
      return null;
  end cux_long_to_char;

  测试例子:

创建索引:
CREATE INDEX CUX.CUX_PROJECT_REQUIREMENT_TB_N3 ON CUX.CUX_PROJECT_REQUIREMENT_TB (
ORGANIZATION_ID , ITEM_CODE, PROJECT_CODE  DESC
) LOGGING TABLESPACE APPS_TS_TX_DATA;

select column_expression ,
  CUX_long_TO_CHAR(p_additional_where =>' index_name =''CUX_PROJECT_REQUIREMENT_TB_N3'' and column_position = 3',
                            p_table_name   =>'DBA_IND_EXPRESSIONS',
                            p_long_column  =>'COLUMN_EXPRESSION') as column_name 
 from dba_ind_expressions
 where index_name ='CUX_PROJECT_REQUIREMENT_TB_N3'
  and column_position = 3 ;
  
  

把 DBA_IND_EXPRESSIONS.COLUMN_EXPRESSION 的值显示出来。   

 

标签:char,clob,column,long,CUX,CHAR,LONG,sql
From: https://www.cnblogs.com/samrv/p/16626427.html

相关文章

  • requests.exceptions.InvalidHeader: Invalid leading whitespace, reserved characte
    报这个错是因为直接从浏览器复制过来的'User-Agent'有空格'User-Agent':'Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/1......
  • angular中echart的使用
    <divclass="ringlike-chart"echarts[options]="options"(chartInit)="onChartInitOne($event)"></div> //初始化publiconChartInitOne(value:any):void{......
  • PyCharm+PyQt5+QtDesigner配置(三)
    换电脑这么多天了,一直没用python写界面应用,昨天用到,需要重新配置环境,于是开始在百度搜索,看到一篇博客写的挺条理的,嗯是我的菜,于是默默看完,最后发现这位大哥真的是转载的我......
  • leetcode 594. Longest Harmonious Subsequence 最长和谐子序列(简单).md
    一、题目大意https://leetcode.cn/problems/longest-harmonious-subsequence和谐数组是指一个数组里元素的最大值和最小值之间的差别正好是1。现在,给你一个整数数组......
  • 【pycharm】社区版给函数生成注释
    1、打开要提前加注释的函数    2、双击选中函数名,右键   3、点击【showContextActions】   4、点击【insertadocumentationstringsub】......
  • Longest parlidrome
    516. LongestPalindromicSubsequenceMediumGivenastring s,find thelongestpalindromic subsequence'slengthin s.A subsequence isasequencet......
  • PyCharm中安装第三方模块以及项目打包
    1.前言除了pip工具可以安装python第三方库外,PyCharm也是可以安装第三方库的。pipinstall包名#E:\Python\Lib\site-packages这个路径下可以查看已安装的第三方包2.......
  • Echart选中事件-geoselectchanged |geoselected | geounselected
    geoselectchangedEventACTION: geoToggleSelectgeo 中地图区域切换选中状态的事件。用户点击选中会触发该事件。{type:'geoselectchanged',//系列ID......
  • 如何用pycharm进行远程开发?
    VScode可以在win上连接远程的linux进行调试代码,pycharm之前一直是不支持的,之前支持的也只是本地同步远程,跟直接连接还是差了些。截止到2022年8月23日,pycharm专业版已经支......
  • pycharm
    展开展开当前代码块ctrl=彻底展开当前代码块ctrlalt=展开所有代码块ctrlshift+折叠折叠当前代码块ctrl-彻底折叠当前代码块ctrlalt-折叠所有代码块ctrlsh......