我以前做kpi的時(shí)候也遇到這種需求,非要在數(shù)據(jù)庫里算出來
專注于為中小企業(yè)提供成都網(wǎng)站制作、網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)淮安區(qū)免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了千余家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
我的解決方案是大量設(shè)置視圖,把每一種子計(jì)算都設(shè)為視圖,就是說,數(shù)據(jù)庫里會(huì)出現(xiàn)大量視圖,但是每個(gè)計(jì)算都是原子計(jì)算
divide在oracle中的用法主要就是用來做除法的運(yùn)算。其中有一個(gè)用法為public BigDecimal divide(BigDecimal divisor,int scale,int roundingMode)第一個(gè)參數(shù)是除數(shù),第二個(gè)參數(shù)代表保留幾位小數(shù),第三個(gè)代表的是使用的模式。
oracle的文件結(jié)構(gòu):
數(shù)據(jù)庫的物理存儲(chǔ)結(jié)構(gòu)是由一些多種物理文件組成,主要有數(shù)據(jù)文件、控制文件、重做日志文件、歸檔日志文件、參數(shù)文件、口令文件、警告文件等。
控制文件:存儲(chǔ)實(shí)例、數(shù)據(jù)文件及日志文件等信息的二進(jìn)制文件。
數(shù)據(jù)文件:存儲(chǔ)數(shù)據(jù),以.dbf做后綴。
日志文件:即Redo Log Files和Archivelog Files。記錄數(shù)據(jù)庫修改信息。
參數(shù)文件:記錄基本參數(shù)。spfile和pfile。
警告文件:show parameter background_dump_dest,使用共享服務(wù)器連接。
跟蹤文件:show parameter user_dump_dest,使用專用服務(wù)器連接。
以上內(nèi)容參考:百度百科-Oracle數(shù)據(jù)庫
select (select count(*) as a from...)/(select count(*) as b from...
) from dual
什么是整除?如果是5/3那么得數(shù)應(yīng)該是1,你要的是1吧。
直接trunc就可以,如果還要余數(shù),那么就是5%3就可以了。
假設(shè)table名稱為t1,如要把(B-A)/B的結(jié)果賦給C,則用下面語句:
update t1 set C=(B-A)/B;
如要經(jīng)過條件篩選更新,則可定義一個(gè)游標(biāo),逐條處理。