oracle如何全角数字,oracle全角转半角函数
oracle中,怎么把一列的全角数字转换为半角数字
函数:
10年积累的网站制作、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有准格尔免费网站建设让你可以放心的选择与我们合作。
to_single_byte(c)转换成半角
to_multi_byte(c)转换成全角
实例:
SELECT '12345',
DUMP('12345'),
TO_SINGLE_BYTE('12345'),
DUMP(TO_SINGLE_BYTE('12345'))
FROM dual;
◆◆决定一个SQL执行效率的是执行计划, 而不是SQL的写法.◆◆
1. 数据真实的"统计"的分布情况
2. 系统视图中记录的统计信息
3. 实际每个SQL执行时对应的数据情况
请问如何从一列包含大小写字母、数字、汉字、全角字符的数据中只把由汉字组成的数据查出来,oracle 10g
使用ASCII码 进行判断
下面的例子
Oracle ASCII码判断数字和字母方法--实用
判断参数是数字和字母
如果是数字、字母返回结果为 Y
如果是非数字非字母返回结果为N
create or replace function check_number_character(p_param in varchar2)
return varchar2
is
v_length number;
v_chr_trim varchar2(100);
v_chr varchar2(10);
v_ascii number;
v_result varchar2(1);
begin
select trim(p_param)
into v_chr_trim
from dual;
select length(v_chr_trim)
into v_length
from dual;
for i in 1..v_length loop
select substr(v_chr_trim,i,1)
into v_chr
from dual;
select ascii(v_chr)
into v_ascii
from dual;
if (v_ascii between 48 and 57) or
(v_ascii between 65 and 90) or
(v_ascii between 97 and 122) then
v_result := 'Y';
else
v_result := 'N';
return v_result;
end if;
end loop;
return v_result;
exception
when no_data_found then
dbms_output.put_line('Please input parameter!');
return 'N';
end;
oracle数据库全角半角问题
select * from testtree tt where to_single_byte(tt.name) like '%%'
你写的不够具体,很多的内容没有写,所以,不清楚你想要什么样的结果,如果你想查找表中含有某个字符,但是这个字符在某些记录中是存储的全角,在某些记录中是存储的半角,就用这种方法查询。
select * from testtree tt where length(tt.name)!=lengthb(tt.name)
上面的这个语句是查询所有含有全角字符的记录
希望对你有帮助!
当前标题:oracle如何全角数字,oracle全角转半角函数
转载来源:http://scyanting.com/article/hccjjd.html