報表工具怎麼作模糊查詢

在數據查詢系統中,咱們經常會遇到精準查詢和模糊查詢。咱們知道,對於關係數據庫,使用精準查詢能夠直接在 sql 裏面使用「where 字段 = 參數值」來過濾對應的數據,而要實現模糊查詢,咱們使用的就是 like 的形式。那麼,在報表裏面該如何使用 like 方式實現模糊查詢來過濾數據呢?web

下面,咱們結合潤乾報表自帶的 hsql 數據庫中的客戶表,來作一個模糊查詢的示例。sql

例如:在下拉框中經過模糊查詢顯示全部姓名裏面帶有「王」字的聯繫人,當用戶選擇後進行精準查詢。而且結果列表在第一次展示所有數據。以下圖所示:數據庫

imagepng

這是一種常見並且體驗不錯的報表需求,咱們該如何實現呢?tomcat

操做很是簡單的哦,下面咱們一塊兒來動手操做一下吧 ~設計

第一步:鏈接數據源3d

先鏈接咱們自帶的 demo 數據庫,別忘了先啓動示例數據庫哦 ~blog

第二步:新建數據集模板

1)Sql 語法爲:SELECT * FROM 客戶 WHERE 客戶. 聯繫人姓名  like ?  or ? is  null(由於咱們想第一次查詢前在結果列表中展示所有數據,因此咱們須要寫上 or ? is null ,也就是參數爲空的時候查詢所有數據。)test

2)設置數據集的參數。格式爲 」%」+ 參數名稱 +」%」。 (注意:咱們對同一個字段「聯繫人姓名」寫了兩個問號,因此須要寫兩個相同的參數。)變量

以下圖所示:

imagepng

imagepng

第三步:設計報表並在報表—參數增長跟數據集名稱相同的參數:

imagepng

第四步:保存報表,並將報表名稱設置爲 test.rpx

第五步:創建參數模板

1) 新建數據集,只取出來客戶表中的聯繫人姓名字段便可。

imagepng

2) 爲 B1 單元格設置單元格編輯風格和 web 變量名稱

imagepng

第六步:保存參數模板,並設置報表名稱爲   test_arg.rpx

(注意:參數模板的名稱要跟主報表的名稱一致,而且加上 _arg 。而後將參數模板保存在和主報表相同的目錄下面)

第七步:啓動 tomcat,發佈報表。

展示效果爲:

imagepng

試驗一下,咱們在單元格輸入一個「王」字,能夠看到,下拉框中會對應顯示全部姓名中包含「王」的聯繫人。

直接點擊查詢展示效果爲:

imagepng

或者是輸入「王」以後,選擇下拉清單裏面的任何一個聯繫人,點擊查詢便可過濾數據。

imagepng

以上就是咱們在報表中模糊查詢的使用方法,有沒有很簡單?有需求的小夥伴們趕忙試試看吧 ~~

噓 ~~ 最後告訴你們一個小祕密,因爲數據庫驅動的問題,若是要查詢的聯繫人姓名字段中有 null 數據,在第一次查詢所有數據時可能會查不到所有的數據,也就是爲空的數據沒法顯示。這時,咱們須要將模糊查詢的數據集的參數改成以下格式:(第二個參數不用百分號拼接的方式去寫,其餘不須要改動)。

imagepng

相關文章
相關標籤/搜索