報表怎麼做模糊查詢
在資料查詢系統中,我們常常會遇到精準查詢和模糊查詢。我們知道,對於關聯式資料庫,使用精準查詢可以直接在 sql 裡面使用“where 欄位 = 引數值”來過濾對應的資料,而要實現模糊查詢,我們使用的就是 like 的形式。那麼,在報表裡面該如何使用 like 方式實現模糊查詢來過濾資料呢?
下面,我們結合潤乾報表自帶的 hsql 資料庫中的客戶表,來做一個模糊查詢的示例。
例如:在下拉框中透過模糊查詢顯示所有姓名裡面帶有“王”字的聯絡人,當使用者選擇後進行精準查詢。並且結果列表在第一次展現全部資料。如下圖所示:
這是一種常見而且體驗不錯的報表需求,我們該如何實現呢?
操作非常簡單的哦,下面我們一起來動手操作一下吧 ~
第一步:連線資料來源
先連線我們自帶的 demo 資料庫,別忘了先啟動示例資料庫哦 ~
第二步:新建資料集
1)Sql 語法為:SELECT * FROM 客戶 WHERE 客戶. 聯絡人姓名 like ? or ? is null(因為我們想第一次查詢前在結果列表中展現全部資料,所以我們需要寫上 or ? is null ,也就是引數為空的時候查詢全部資料。)
2)設定資料集的引數。格式為 ”%”+ 引數名稱 +”%”。 (注意:我們對同一個欄位“聯絡人姓名”寫了兩個問號,所以需要寫兩個相同的引數。)
如下圖所示:
第三步:設計報表並在報表—引數增加跟資料集名稱相同的引數:
第四步:儲存報表,並將報表名稱設定為 test.rpx
第五步:建立引數模板
1) 新建資料集,只取出來客戶表中的聯絡人姓名欄位即可。
2) 為 B1 單元格設定單元格編輯風格和 web 變數名稱
第六步:儲存引數模板,並設定報表名稱為 test_arg.rpx
(注意:引數模板的名稱要跟主報表的名稱一致,並且加上 _arg 。然後將引數模板儲存在和主報表相同的目錄下面)
第七步:啟動 tomcat,釋出報表。
展現效果為:
試驗一下,我們在單元格輸入一個“王”字,可以看到,下拉框中會對應顯示所有姓名中包含“王”的聯絡人。
直接點選查詢展現效果為:
或者是輸入“王”之後,選擇下拉清單裡面的任何一個聯絡人,點選查詢即可過濾資料。
以上就是我們在報表中模糊查詢的使用方法,有沒有很簡單?有需求的小夥伴們趕緊試試看吧 ~~
噓 ~~ 最後告訴大家一個小秘密,由於資料庫驅動的問題,如果要查詢的聯絡人姓名欄位中有 null 資料,在第一次查詢全部資料時可能會查不到全部的資料,也就是為空的資料無法顯示。這時,我們需要將模糊查詢的資料集的引數改為如下格式:(第二個引數不用百分號拼接的方式去寫,其他不需要改動)。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69900830/viewspace-2665112/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 讀 CSV/TXT 的報表怎麼做分頁查詢?
- mysql 模糊查詢MySql
- 拋棄mysql模糊查詢,使用sphinx做專業索引MySql索引
- oracle 精確查詢和模糊查詢Oracle
- pgsql查詢優化之模糊查詢SQL優化
- elasticsearch的模糊查詢Elasticsearch
- MyBatis模糊查詢LIKEMyBatis
- mybatis - [07] 模糊查詢MyBatis
- 報表的查詢皮膚怎麼顯示在左側?
- 資料分析報表怎麼做
- Java ——MongDB 插入資料、 模糊查詢、in查詢Java
- 報表連 hive,資料量比較大,怎麼分頁查詢?Hive
- sql 模糊查詢問題SQL
- mybatis-模糊查詢like CONCATMyBatis
- python 當中的模糊查詢Python
- [20190524]淺談模糊查詢.txt
- IndexPatternService 模糊查詢索引 fuzzyQuery分析Index索引
- [Uniapp] uni-combox模糊查詢APP
- int 被當作模糊查詢
- PostgreSQL DBA(192) - 整行模糊查詢SQL
- SAP RETAIL分配表的查詢報表AI
- 報表連 MongoDB,資料量大報表慢,怎麼做分頁?MongoDB
- SQL-基礎語法 - 條件查詢 - 模糊查詢SQL
- Mybatis中Oracle的拼接模糊查詢MyBatisOracle
- Mybatis模糊查詢結果為空MyBatis
- mybatis 對特殊字元的模糊查詢MyBatis字元
- Peewee Sqlite3 中文模糊查詢SQLite
- 【PostgreSQL】 字首模糊查詢級優化SQL優化
- 模糊查詢區分大小寫嗎?
- centos vim怎麼查詢?CentOS
- 百億級資料分表後怎麼分頁查詢?
- mysql like查詢 - 根據多個條件的模糊匹配查詢MySql
- BIRT 異構跨庫的動態關聯查詢怎麼做
- mybatis xml 檔案中like模糊查詢MyBatisXML
- 加密的手機號,如何模糊查詢?加密
- search(11)- elastic4s-模糊查詢AST
- C# Winform ComboBox模糊查詢實現C#ORM
- 【最佳化】模糊查詢索引問題索引