最近,將原來的數字符欄位轉換為數字時,總報錯誤:無效數字。
如何找出其中哪些是非數字字元的記錄?比較麻煩的事。下面是用oracle db自帶的函式translate可以找出來的
1.建立測試表
create table testchar(
item_number varchar2(20)
);2.手工插入測試記錄
insert into testchar (item_number) values ('312');
insert into testchar (item_number) values ('312');
insert into testchar (item_number) values ('4412');
insert into testchar (item_number) values ('152');
insert into testchar (item_number) values ('162');
insert into testchar (item_number) values ('172');
insert into testchar (item_number) values ('142');
insert into testchar (item_number) values ('142');
insert into testchar (item_number) values ('112');
insert into testchar (item_number) values ('1d2');
insert into testchar (item_number) values ('152');
insert into testchar (item_number) values ('125');
insert into testchar (item_number) values ('162');
insert into testchar (item_number) values ('712');
insert into testchar (item_number) values ('a712');
commit;
3.妙用oracle 內建函式translate找出非數字字元的記錄
select trim(translate(rtrim(ltrim(item_number)), '#0123456789', '#'))
from testchar
where trim(translate(rtrim(ltrim(item_number)), '#0123456789', '#')) is not null;
查出數字字元字段中非數字字元的記錄
最近,將原來的數字符欄位轉換為數字時,總報錯誤 無效數字。如何找出其中哪些是非數字字元的記錄?比較麻煩的事。下面是用oracle db自帶的函式translate可以找出來的 1.建立測試表 create table testchar item number varchar2 20 2.手工插入測試...
1132 數字字元統計
time limit 1 sec memory limit 128 mb submit 3906 solved 2078 submit status web board 對於給定的乙個字串,統計其中數字字元出現的次數。字串長度不超過1000.輸入資料有多行,第一行是乙個整數n,表示測試例項的個數,後...
數字字元 解題思路
在十進位制表示中,任意乙個正整數都可以用字元 0 9 表示出來。但是當 0 9 這些字元每種字元的數量有限時,可能有些正整數就無法表示出來了。比如你有兩個 1 乙個 2 那麼你能表示出11,12,121等等,但是無法表示出10,122,200等數。現在你手上擁有一些字元,它們都是 0 9 的字元。你...