[發明專利]交叉表導出數據的處理方法及系統、計算機可讀存儲介質有效
| 申請號: | 201811497891.0 | 申請日: | 2018-12-07 |
| 公開(公告)號: | CN109697211B | 公開(公告)日: | 2020-12-01 |
| 發明(設計)人: | 馬東慧;易新 | 申請(專利權)人: | 用友網絡科技股份有限公司 |
| 主分類號: | G06F16/248 | 分類號: | G06F16/248;G06F40/174 |
| 代理公司: | 北京友聯知識產權代理事務所(普通合伙) 11343 | 代理人: | 尚志峰;汪海屏 |
| 地址: | 100094*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 交叉 導出 數據 處理 方法 系統 計算機 可讀 存儲 介質 | ||
本發明提供了一種交叉表導出數據的處理方法及系統、計算機可讀存儲介質。其中該處理方法,包括:獲取原始交叉表模型的執行SQL;從原始交叉表模型的交叉區域中獲取列維度字段集,根據列維度字段集構建計算字段,向執行SQL增加計算字段,得到第一執行SQL;獲取一個交叉指標,根據交叉指標對第一執行SQL進行轉換,以獲得交叉指標對應的SQL語句;獲得所有交叉指標對應的SQL語句,并進行合并,得到目標執行SQL;根據目標執行SQL進行查詢,得到結果集,將結果集展現在目標交叉表模型中。本發明在數據庫層面實現行對列的轉換,既滿足交叉表的全部導出,又避免交叉表執行SQL數據行數過大,并且有效的提高交叉表的導出速度。
技術領域
本發明涉及計算機技術領域,具體而言,涉及一種交叉表導出數據的處理方法,一種交叉表導出數據的處理系統,及一種計算機可讀存儲介質。
背景技術
報表數據的輸出是用戶在使用包含報表的軟件產品的常見操作。通常情況下,開發人員都會在產品上提供導出的選項,然而實際中使用的交叉表雖然在展現上體現的行數不多,但是實際SQL查詢出的數據量是非常大的,并且在導出的過程中還要填充表格模型等,這就給服務器及客戶端造成不小的壓力,導出的時間也很長。圖1示出了現有技術中的交叉表導出數據的原理,例如:select部門,姓名,年份,薪資項目,sum(money)from tablegroup by部門,姓名,年份,薪資項目order by部門,姓名,年份,薪資項目。導出結果如表1所示:
表1
續表
現有技術中的交叉表的導出方式存在以下的幾點問題:
1、一次性查詢展現并按照顯示輸出的問題。
查詢行數放大后,會導致客戶端內存占用較大,如果同時打開多張報表或多個查詢節點,可能會導致內存溢出,系統無法響應,必須要重新進入系統才可以,造成非常差的用戶體驗。并且查詢行數過多時,用戶在前端查看也并不方便,如果多個用戶同時在前端反復去查詢展現這么大的數據量,那么對服務器來說也是一個不小的壓力,因此大多數軟件產品會對此有一定的行數限制。
2、交叉表全部數據導出遇到數據量大的問題。
使用交叉表時用戶雖然在表中看上去展現的行數不多,但是實際上SQL搜索出的數據量還是非常大的,如果在行維度或是列維度設置較多時,數據集呈現上百萬的量是很常見的。這樣會給中間件造成不小的壓力。例如一個900行,DL(自定義)列的交叉表,實際在SQL執行后搜索出的行數就有10萬多行,在實際應用中幾千行的交叉表還是很常見的,那么這樣就會達到上百萬行的數據量。
3、現有的導出方式無法實現分批導出,需要在后臺代碼中轉換成交叉表模型,可能會造成分批行的行數據不全。
發明內容
本發明旨在至少解決現有技術或相關技術中存在的技術問題之一。
為此,本發明的一方面在于提出了一種交叉表導出數據的處理方法。
本發明的另一方面在于提出了一種交叉表導出數據的處理系統。
本發明的再一方面在于提出了計算機可讀存儲介質。
有鑒于此,本發明提出了一種交叉表導出數據的處理方法,包括:獲取原始交叉表模型的執行SQL;從原始交叉表模型的交叉區域中獲取列維度字段集,根據列維度字段集構建計算字段,向執行SQL增加計算字段,得到第一執行SQL;獲取一個交叉指標,根據交叉指標對第一執行SQL進行轉換,以獲得交叉指標對應的SQL語句,SQL語句用于對交叉指標的交叉數據進行行對列的轉換;獲得所有交叉指標對應的SQL語句,并進行合并,得到目標執行SQL;根據目標執行SQL進行查詢,得到結果集,將結果集展現在目標交叉表模型中。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于用友網絡科技股份有限公司,未經用友網絡科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811497891.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種風電機組關聯故障在線診斷方法
- 下一篇:一種數據處理方法和數據處理裝置
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





