`
edwards0307
  • 浏览: 27572 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

from string get number data using pl/sql or sql

 
阅读更多

declare   @aa   varchar(80),----INFO列
          @bb   varchar(80)
  
set   @aa   ='你好12按时地方'
set @bb=''
while   PATINDEX('%[0-9]%',@aa)<>0  /*每次循环找出一个数字*/
begin
    set @bb = @bb+substring(@aa,PATINDEX('%[0-9]%',@aa),1)/*把找出来的数字进行相加*/
    set @aa=substring(@aa,1,PATINDEX('%[0-9]%',@aa)-1)+
     substring(@aa,PATINDEX('%[0-9]%',@aa)+1,len(@aa)-PATINDEX('%[0-    9]%',@aa)) /*把找出来的数字从原先的字符串中踢除出来,然后再循环找出更多的数字*/  
end
select @bb/*要求得到的结果*/

分享到:
评论

相关推荐

    Oracle sqldeveloper without jdk (win+linux)

    - Bug # 4918539: ORA-ORA-06502 or ORA-01460 may occurs if a procedure is executed through the Run PL/SQL dialog box and a string with multibyte characters is assigned to one of the parameters. ...

    oracle存储过程

    Oracle存储过程是数据库管理系统Oracle中的一个重要特性,它允许开发者编写包含SQL语句和PL/SQL代码的可重复使用的程序单元。这些程序单元可以接受输入参数,处理数据,然后返回结果,甚至可以创建输出表。在C#编程...

    oracle存储过程学习经典[语法+实例+调用]

    CREATE OR REPLACE PROCEDURE get_paged_data ( p_start_row IN NUMBER, p_end_row IN NUMBER, CURSOR c_data RETURN data_table%ROWTYPE ) AS BEGIN OPEN c_data FOR SELECT * FROM ( SELECT t.*, ROW_NUMBER...

    oracle分页查询

    PROCEDURE get_paged_data(p_start IN NUMBER, p_end IN NUMBER, p_result OUT SYS_REFCURSOR); END pg_query; / CREATE OR REPLACE PACKAGE BODY pg_query AS PROCEDURE get_paged_data(p_start IN NUMBER, p_end...

    ora分析脚本

    using sql_id along with child number instead of hash value # ora webplan aca4xvmz0rzup/3 1 - hash_to_sqlid &lt;sql_id&gt; : get the sql_id of the cursor given its hash value - sqlid_to_hash &lt;sql_id&gt;: ...

    Oracle事例

    [using \'CONNECT_STRING\'] 可以在服务器端,也可以在客户端建立,但必须注意,两台服务器之间 数据库必须可以互访,必须各有各自的别名数据库 18、查看数据库链路 select * from all_db_links; select * from...

Global site tag (gtag.js) - Google Analytics