從中取出所有nck相同的hweight的值,是更新到所有nck相同的數(shù)據(jù)的hweight2字段中么?
目前成都創(chuàng)新互聯(lián)公司已為上千多家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計(jì)、日照網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
這個是更新所有數(shù)據(jù)的hweight2為hweight的累加。
update tab a set hweight2=(select sum(hweight) from tab b where a.nck=b.nck group by nck);
更新hweight3的值
update tab a set hweight3=hweight1-hweight-hweight2;
取值。
select hweight2,hweight3 from tab
這個累加可以寫在存儲過程中,在java中調(diào)用,也可以在java里面執(zhí)行update語句。
sum() over(partition by 字段1 order by 字段2)??
用下面這個數(shù)據(jù)集舉例。
create table tb(id int ,num ,int);
insert into tb values(1,2);
insert into tb values(2,3);
insert into tb values(3,4);
insert into tb values(4,5);
insert into tb values(5,6);
select id,num,sum(num) over(order by num) cumsum from tb;
order by 默認(rèn)為升序,添加關(guān)鍵字 desc 后為降序排列。
為了更進(jìn)一步了解這個函數(shù)的工作原理,我們增加2行數(shù)據(jù)。
insert into tb values(1,5);
insert into tb values(1,7);
在執(zhí)行一次上面那個SQL語句:
select id,num,sum(num) over(order by num) cumsum from tb;
注意看id字段,其排序已被打亂,這是按num字段升序排列的結(jié)果,所以,參數(shù)order by 起排序作用。
select id,num,sum(num) over(partition by id order by num) from tb;
按id字段分組累加,組內(nèi)按num字段排序。
如果是數(shù)據(jù)累加的話,可以通過sum函數(shù)來實(shí)現(xiàn),如果是計(jì)數(shù)的話,可以通過count來實(shí)現(xiàn)。
sql:select username ,count(accountNo) as count,sum(amount) as amount
from tablename order by username desc group by username;
以上就可以求出username下,accountNo的條數(shù)和對應(yīng)的總amount,之后通過username字段降序排序。
先解釋該怎么做;
第一步:是區(qū)別不同組,以invno,goods分組,就可以列出所有不同的invno,goods的組。
第二步,一個sum函數(shù)搞定。
-------------------------
SQL語句如下:
select invno,sum(saamount),goods from tbsale group by invno,goods
網(wǎng)頁標(biāo)題:oracle怎么累加語句 oracle 累加函數(shù)
文章轉(zhuǎn)載:http://jinyejixie.com/article12/hpcpdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、Google、企業(yè)建站、定制網(wǎng)站、網(wǎng)站改版、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)