BIRT實現字段拆分表

2021-08-27 22:23:31 字數 809 閱讀 3411

將字段拆分為多條記錄,可以用儲存過程或報表指令碼來實現,但**比較複雜,這種情況下可以用集算器來輔助報表工具,下面用例子來說明。

庫表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 起始位置,從第幾個字元開始正規表示...

Ntext欄位拆分處理

if exists select from dbo.sysobjects where id object id n dbo p split and objectproperty id,n isprocedure 1 drop procedure dbo p split go ntext欄位拆分處理 ...