設(shè)為首頁收藏本站Access中國

Office中國論壇/Access中國論壇

 找回密碼
 注冊

QQ登錄

只需一步,快速開始

返回列表 發(fā)新帖
查看: 5446|回復(fù): 3
打印 上一主題 下一主題

淺談數(shù)據(jù)庫開發(fā)(一):關(guān)于寬表

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2019-9-21 17:24:49 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
大一點(diǎn)的項(xiàng)目,咱也不談了。畢竟通常不是一個(gè)人能解決的問題。分解模塊,建表,寫業(yè)務(wù)邏輯等等,其實(shí)網(wǎng)上應(yīng)該也有不少這類文章。這里主要談一下二次開發(fā)的一些問題。需求通常是這樣開始的:
例如,公司購買了一套ERP軟件。但老板覺得這統(tǒng)計(jì)太弱了,有些圖表可能不是自己想要的,但再去找廠家開發(fā)吧,似乎又不知道什么時(shí)候可以搞好,價(jià)格多少,等等。于是,老板說,“小王。ㄖ劣跒樯督行⊥,就問下站長嘛,反正他也姓王),公司有任務(wù)交給你。”

你一臉蒙圈地望著這個(gè)禿頂?shù)挠湍伌笫,心想,工資沒加過幾次,老是想折磨我,且聽他怎么說,大不了咱東家不打打西家。

老板擠出一絲微笑,“不用怕,不是練葵花寶典去維護(hù)世界和平。只是改改數(shù)據(jù)庫,給咱做幾個(gè)報(bào)表就好了。”

你淡淡地說,“這改啥?導(dǎo)出數(shù)據(jù)庫,用Excel做一下不就得了?你把樣式發(fā)給我……”心里默默地喊了一聲“臥槽”。

“小王啊,我需要看公司每個(gè)產(chǎn)品每天銷量的上月環(huán)比和去年同比的,各個(gè)產(chǎn)品的占比,還有一年以來的客單價(jià)變化……”

你心里快速思考著:每天都要導(dǎo)出一次上月當(dāng)天和去年今日的數(shù)據(jù),再進(jìn)行對比。。。。尼瑪,哪有這樣折磨人的?老子不干了還不行嗎?心里一千萬匹草泥馬奔騰而過。

老板開始講述他的偉大夢想,如何在這銷量變化中發(fā)現(xiàn)問題,解決問題,最后打算2020年,哦, 不對,是2025年,帶上你去紐約敲鐘上市,畢竟你是公司的大功臣嘛……你卻一個(gè)字都聽不進(jìn)去,最后他講完了,問一句,“你覺得Excel容易實(shí)現(xiàn)嗎?”

你一臉無奈,“好吧。我試試看吧!毙睦飬s在嘀咕著,現(xiàn)在要不是互聯(lián)網(wǎng)寒冬,我特么還會讓你這樣蹂躪嗎?我小王生不逢時(shí),命運(yùn)多舛啊。對這個(gè)問題,心底卻沒什么譜,也不知道能不能做,該怎么做。

在你拿到老板給的模板后,你開始思考怎么著手了。既然要看這個(gè)結(jié)果,那么我就把這個(gè)結(jié)果做成一個(gè)表呈現(xiàn)出來不就得了嗎?
那這個(gè)表的數(shù)據(jù)又該怎么處理?環(huán)比是需要拿數(shù)據(jù)對比才能算出來的啊。所以你覺得應(yīng)該加兩個(gè)字段:上月銷量,去年銷量。但是這按每個(gè)產(chǎn)品做成一列,又該怎么處理呢?而且還是二級的…如果沒有數(shù)據(jù)的話,又該怎么處理呢…你不禁陷入了沉思。

于是一個(gè)很現(xiàn)實(shí)的問題擺在了你的面前:如何建立寬表。


關(guān)于寬表,一般情況下是根據(jù)需要展示的字段來建立的。像這個(gè)圖,至少需要以下字段:

當(dāng)然這是初步的處理。接下來,你可能需要考慮一些查詢問題,例如,按某個(gè)門店來分別查詢統(tǒng)計(jì)。。。至于需要什么,你可能還要和老板進(jìn)一步商談(順便提下加薪的事情。畢竟這太南了)。

在實(shí)際的工作中,寬表的建立是一個(gè)很重要的事情。這里只是簡化了一些操作罷了。必要時(shí),可能需要建立一些中間表,最后通過中間表的加工來填充寬表。例如,像這里的“去年銷量”,“上月銷量”,就可以單獨(dú)剝離出來放在中間表里。當(dāng)然,如果數(shù)據(jù)不多的話,也可以像上圖那樣,加在寬表上。

由于這里的查詢只是根據(jù)日期,所以可以把“環(huán)比”,“同比”加到字段里。但如果出現(xiàn)更復(fù)雜的查詢(例如,按門店名稱,按門店所屬城區(qū)合計(jì)后計(jì)算環(huán)比和同比等等)時(shí),則應(yīng)該考慮刪除這兩個(gè)字段。——因?yàn)檫@兩個(gè)字段是動態(tài)的,無法固化下來。那么該怎么展示呢?這時(shí)候則是通過一定條件的SQL語句來寫了。

絮絮叨叨,今天就先說這么多了。

相關(guān)文章:
淺談數(shù)據(jù)庫開發(fā)(一):關(guān)于寬表
淺談數(shù)據(jù)庫開發(fā)(二)——從寬表到存儲過程(之一)
淺談數(shù)據(jù)庫開發(fā)(三)——從寬表到存儲過程(之二)
淺談數(shù)據(jù)庫開發(fā)(四)——從寬表到存儲過程(之三)
淺談數(shù)據(jù)庫開發(fā)(五)——從寬表到存儲過程(之四)
淺談數(shù)據(jù)庫開發(fā)(六)——從寬表到存儲過程(之五)

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?注冊

x
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 分享淘帖 訂閱訂閱
2#
發(fā)表于 2019-9-27 08:56:12 | 只看該作者
已經(jīng)蒙圈
回復(fù)

使用道具 舉報(bào)

3#
發(fā)表于 2019-11-16 16:28:14 | 只看該作者
這是好多民營企業(yè)的報(bào)表要求,深有體會,難呀!
4#
發(fā)表于 2021-10-11 10:19:09 | 只看該作者
學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則

QQ|站長郵箱|小黑屋|手機(jī)版|Office中國/Access中國 ( 粵ICP備10043721號-1 )  

GMT+8, 2025-7-13 08:44 , Processed in 0.096948 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回復(fù) 返回頂部 返回列表