字串拆分之公式分解

2021-04-27 01:16:05 字數 1397 閱讀 2331

/*

-- 鄒建

分解公式

將公式按運算分解到表中

*/declare

@str

varchar

(100

)declare

@iint

,@str1

varchar(10

),@str2

varchar(10

)set

@str='

3+7+12-13+8-9*123'--

要分解的字串

declare

@tbtable

(num

varchar(20

),operation

varchar(2

))   

--定義儲存結果的表

--公式分拆

set@i

=patindex('

%[^0-9]%',

@str

)while

@i>

0begin

select

@str1

=left

(@str,@i

-1),

@str

=substring

(@str,@i

,8000),

@i=patindex('

%[0-9]%',

@str),

@str2

=left

(@str,@i

-1),

@str

=substring

(@str,@i

,8000),

@i=patindex('

%[^0-9]%',

@str

)insert

into

@tbvalues

(@str1

,@str2

)end

if@str

<>

''insert

into

@tbvalues

(@str,''

)--顯示分拆結果

select

*from

@tb /*

num                  operation

-------------------- ---------

3                    +

7                    +

12                   -

13                   +

8                    -

9                    *

123                 

(7 行受影響) */

拆分字串

拆分乙個字串,獲取每一組的key與value。如字串 qq adf f qewr98 eer d9adf t ad34 f qewrqr u adf43 gggg 2344 按照物件導向理念來解決,建立乙個物件 這個是對物件物件,有key和value兩個特性。我們需要把拆分好的資料臨時儲存起來,現在...

拆分字串

本函式可以將 目標字串 以 指定字串 進行拆分,並通過表結構返回結果。如下 create or replace type str split is table of varchar2 4000 create or replace function splitstr p string in varch...

拆分字串

拆分乙個字串,獲取每一組的key與value。如字串 qq adf f qewr98 eer d9adf t ad34 f qewrqr u adf43 gggg 2344 按照物件導向理念來解決,建立乙個物件 這個是對物件物件,有key和value兩個特性。我們需要把拆分好的資料臨時儲存起來,現在...