中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

大數據報表工具中動態參數的使用方法和場景是什么

發布時間:2022-01-15 15:33:20 來源:億速云 閱讀:151 作者:柒染 欄目:大數據

這篇文章將為大家詳細講解有關大數據報表工具中動態參數的使用方法和場景是什么,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

報表開發過程中,有的時候我們會覺得普通參數很難滿足一些業務需求,比如第二個數據集要引用第一個數據集的結果進行計算,動態控制 SQL 的過濾條件,動態列等,如果您遇到了這種情況,可以嘗試使用動態參數即 ${參數名} 的方式來達到我們想要的效果。

那么,什么是動態參數呢?

動態參數一般是依賴于普通參數的具有計算能力的參數,在報表中動態參數我們可以看做是一個占位符,在報表運算之前,系統會全面搜索整張報表定義,將所有 ${參數名} 中的參數名替換成參數值即 動態參數表達式的結果。

下面我們舉幾個例子,看一下

  1. 首次展現參數值為空,查詢全部數據

實現方法:

a. 將數據集中原有的 where 子句部分,用動態參數替換 如下圖

更改前 SQL:

SELECT 訂單. 訂單 ID, 訂單. 客戶 ID, 訂單. 訂購日期, 訂單. 貨主地區, 訂單. 運貨商, 訂單. 運貨費

FROM 訂單

where 訂單. 訂單 ID >=10254

更改后 SQL:

大數據報表工具中動態參數的使用方法和場景是什么

b. 菜單欄中 選擇【報表】à 【參數】,新增動態參數,

表達式為:if(bid==null,"",“where 訂單. 訂單 ID >=”+@bid)

意為:根據參數模板 bid 的參數值是否為空,確定 sql 部分被替換的內容,如下圖

大數據報表工具中動態參數的使用方法和場景是什么

注:bid 為參數模板傳遞的參數名稱

c. 其他,設置按照報表常規操作進行開發設計。

2. 第二個數據集要根據引用第一個數據集的結果進行計算

實現方法:

a. 新增動態參數,表達式為第一個數據集的 sql 語句,如下圖

大數據報表工具中動態參數的使用方法和場景是什么

參數表達式:

if(@bid==null || @bid=="" ,

“where 訂單 ID in (”+string(split(query(“select 訂單 ID from 訂單 where 貨主地區 =?”,“華中”;“demo”),“,”))+“)”,

“where 訂單 ID in (”+string(split(@bid,“,”))+“)”)

意為:如果參數 bid 為空,則根據某個 sql 語句的執行結果進行查詢,否則根據 bid 參數值進行數據過濾

b. 數據集部分設置如下:

大數據報表工具中動態參數的使用方法和場景是什么

c. 其他,設置按照報表常規操作進行開發設計。

3. 動態控制 SQL 的過濾條件

數據集 SQL 中包含多個過濾條件,假設當訂單 ID 及貨主地區參數值為空時,SQL 語句中去掉這兩個查詢條件,同時假如其中一個有值則對應字段過濾生效,否則兩個參數都有值時,則訂單 ID 及貨主地區過濾均生效。

注:參數 arg1 對應訂單 ID、參數 arg2 對應貨主地區

實現方法:

a. 新增動態參數,利用 if() 函數實現上述邏輯判斷,如下圖

大數據報表工具中動態參數的使用方法和場景是什么

參數表達式為:

if(arg1=="" || arg1==null,

if(arg2=="" || arg2==null,“1=1”,“貨主地區 =’”+arg2+“’”),

if(arg2=="" || arg2==null,“訂單 ID=”+arg1,“訂單 ID=”+arg1 +“and 貨主地區 =’”+arg2+“’”)

)

b. 數據集部分設置如下:

大數據報表工具中動態參數的使用方法和場景是什么

c. 其他,設置按照報表常規操作進行開發設計。

關于大數據報表工具中動態參數的使用方法和場景是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

黑山县| 伊吾县| 抚州市| 儋州市| 嘉禾县| 宜春市| 阿城市| 农安县| 遵化市| 前郭尔| 竹山县| 密山市| 尼玛县| 洪江市| 彩票| 吉林省| 渝北区| 青浦区| 临沭县| 合川市| 贡嘎县| 甘洛县| 青田县| 肇州县| 兴城市| 奉化市| 石景山区| 庆元县| 西藏| 罗甸县| 乐昌市| 彭泽县| 方山县| 遵义市| 水富县| 厦门市| 吉木乃县| 青浦区| 武川县| 新竹市| 江安县|