將字段拆分為多條記錄,可以用儲存過程或報表指令碼來實現,但**比較複雜,這種情況下可以用集算器來輔助報表工具,下面用例子來說明。
庫表data有兩個字段,需要將anomoalies欄位按空格拆分為多個字串,每個字串和原id欄位形成新的記錄。源資料如下:
集算器**:
a1:查詢資料庫。
a2:拆分anomalies欄位,形成新二維表。函式conj可對a1中每個成員的計算結果進行合併。「~」表示集合中的當前成員。結果如下:
a3:將計算結果返回給報表工具。集算器對外提供jdbc介面,報表工具會將集算器識別為普通資料庫。
下面用birt設計簡單的list表:
預覽:
報表呼叫集算器的方法和呼叫儲存過程一樣,比如將本指令碼儲存為birtsplitrow.dfx,則在birt的儲存過程設計器中可以用callbirtsplitrow()來呼叫並輸入引數。
BIRT實現字段拆分表
將字段拆分為多條記錄,可以用儲存過程或報表指令碼來實現,但 比較複雜,這種情況下可以用集算器來輔助報表工具,下面用例子來說明。庫表data有兩個字段,需要將anomoalies欄位按空格拆分為多個字串,每個字串和原id欄位形成新的記錄。源資料如下 集算器 a1 查詢資料庫。a2 拆分anomalie...
ORACLE 表中字段根據逗號拆分多行
這個函式的作用是正則分隔字串,用法為 function regexp substr string,pattern,position,occurrence,modifier srcstr 需要進行正則處理的字串 pattern 進行匹配的正規表示式 position 起始位置,從第幾個字元開始正規表示...
在SQLite中如何用乙個表的字段更新另乙個表
sql語句 update table 1 set x select x from table 2 where table 1.y table 2.y 如果括號中臨時建立的表中元素的個數小於table 1中元素個數或者只想更新table 1中部分x的值,可以在後面加where子句 example 更新...