oracle中如何将字符和数字转成中文
来源:互联网 发布:剑三喜子捏脸数据 编辑:程序博客网 时间:2024/05/16 12:39
在Oracle数据库开发过程中,经常会遇到汉字和数字组合的字符串,需要处理这样的字符串,比如是否有汉字、显示相同长度数据时对齐等。、
1、判断字符串中是否有中文,length和lengthb函数的应用:
select length('test'),lengthb('test'),length('测试'),lengthb('测试') from dual
length() 返回的是:字符数;
lengthb()返回的是:字节数
可以通过这两者的区别来判断某个字符串中是否有中文:
select * from tbl_name where length(col_a) <> lengthb(col_a)
通过这两个函数实现如下效果,将给定字符串中汉字拼接,非汉字字符排除。
实现函数:
CREATE OR REPLACE FUNCTION SUBSTR_TEST(PCOLIN IN VARCHAR2) RETURN VARCHAR2 ASV_STR VARCHAR2(200);V_LENGTH NUMBER;CUR_CHAR VARCHAR(10);C_COUNT NUMBER;I NUMBER;BEGIN V_LENGTH :=0; I:=1; SELECT LENGTH(PCOLIN) INTO V_LENGTH FROM DUAL; WHILE I< V_LENGTH+1 LOOP CUR_CHAR:=SUBSTR(PCOLIN,I,1); SELECT COUNT(1) INTO C_COUNT FROM DUAL WHERE LENGTH(CUR_CHAR) <> LENGTHB(CUR_CHAR); IF C_COUNT > 0 THEN V_STR:=V_STR||CUR_CHAR; END IF; I:=I+1; END LOOP; RETURN(V_STR);END;
select substr_test(ename),ename from emp where length(ename) <> lengthb(ename)
2、将字符串中非中文字符转成中文,也就是转成全角字符
函数 to_multi_byte 实现
select to_multi_byte(e.ename),e.ename from emp e;
0 0
- oracle中如何将字符和数字转成中文
- [经典]将阿拉伯数字转成中文数字字串和将中文字串转成拉伯数字
- Oracle中如何将数字转换成字符型
- Oracle中如何将数字转换成字符型
- js将字符转成数字
- Python如何将百分号的字符转成数字
- 正则表达式将数字金额转成中文和英文
- 如何将编辑框中内容转成单个字符输出
- ORACLE将字符和数字数据分离
- 如何实现oracle字段中字符+数字的数据------兼顾字符和数字组合排序
- 用于将阿拉伯数字转成中文数字
- oracle中如何将日期转成时间戳
- C语言将数字转成大写中文数字
- 意外收获:如何将中文转成拼音
- vc++将数字和日期转成字符串
- VC++中如何将一个CString字符串转化为数字?(该字符串由数字和特殊字符组成)
- 如何将一串字符中的数字加和
- 字符转成数字
- 集合初探(六)
- 春不但包含了春天、春愁、春思
- 前台android后台springmvc+hibernate
- You've implemented -[<UIApplicationDelegate> application:didReceiveRemoteNotification:fetchCompletio
- C_作用域、链接属性和储存类型
- oracle中如何将字符和数字转成中文
- Retrofit+RxJava实战日志(5)-如何获取缓存
- UIScrollView控件的代理
- mysql数据转到oracle数据库
- Java WeakReference的理解与使用
- 监听软键盘抬起收起状态
- VisualSVN 配置提交svn时强制输入日志
- java工程师必须会的linux命令
- 关于Oracle存储过程的学习