数据本身是由多个二进制数据拼接出来的,存入数据库时是按照varchar2(66)存储的。。现在要解析出来,在sqlserver中是这么写的
select cast(substring(cast(ageing_a as varbinary),1,5) as bigint) as age1,
cast(substring(cast(ageing_a as varbinary),6,5) as bigint) as age2,
cast(substring(cast(ageing_a as varbinary),11,5) as bigint) as age3,
cast(substring(cast(ageing_a as varbinary),16,5) as bigint) as age4,
cast(substring(cast(ageing_a as varbinary),21,5) as bigint) as age5,
cast(substring(cast(ageing_a as varbinary),26,5) as bigint) as age6
from tablename 不太熟悉oracle,忘各位帮忙,看看在oracle中使用pl/sql应该怎么写。谢谢。
select cast(substring(cast(ageing_a as varbinary),1,5) as bigint) as age1,
cast(substring(cast(ageing_a as varbinary),6,5) as bigint) as age2,
cast(substring(cast(ageing_a as varbinary),11,5) as bigint) as age3,
cast(substring(cast(ageing_a as varbinary),16,5) as bigint) as age4,
cast(substring(cast(ageing_a as varbinary),21,5) as bigint) as age5,
cast(substring(cast(ageing_a as varbinary),26,5) as bigint) as age6
from tablename 不太熟悉oracle,忘各位帮忙,看看在oracle中使用pl/sql应该怎么写。谢谢。
TO_NUMBER(substr(HEX_TO_RAW(ageing_a),6,5)) age2,
TO_NUMBER(substr(HEX_TO_RAW(ageing_a),11,5)) age3,
TO_NUMBER(substr(HEX_TO_RAW(ageing_a),16,5)) age4,
TO_NUMBER(substr(HEX_TO_RAW(ageing_a),21,5)) age5,
TO_NUMBER(substr(HEX_TO_RAW(ageing_a),26,5)) age6
from tablename