如果表已經(jīng)存在,用如下方法設置默認值。
創(chuàng)新互聯(lián)主營衛(wèi)東網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,成都app軟件開發(fā)公司,衛(wèi)東h5小程序設計搭建,衛(wèi)東網(wǎng)站營銷推廣歡迎衛(wèi)東等地區(qū)企業(yè)咨詢
1
alter?table?表名?modify?字段名?default?默認值;
如test表中設置age字段為30,可用如下語句:
1
alter?table?test?modify?age?default?30;
測試:
添加一條記錄:
1
insert?into?test?(name)?values?('du小智');
結果:
這里可以看到du小智的默認age則為30。
select id,ca,ca cb from table where id=1
union all
select id,ca,ca+sum(select ca from table where ida.id) from table a start with id=2 connect by id = prior id+1
這個是臨時想出來的,可能有些地方不完善,不過我估計可能不行,畢竟我沒有環(huán)境測試,你試試吧。
我是因為怕id1的時候報錯所以就把id=1拿出來了,放到一塊沒準也行,試試吧。sql就在測試中產(chǎn)生。
不好意思,剛才好像腦子不大清楚,當然現(xiàn)在也不清楚,不過似乎可以
select id,ca,(select sum(ca) from table where id=a.id) cb from table a start with id=1 connect by id = prior id+1 and id=(select max(id) from table)
感覺比剛才好一點,最后的那個條件不寫可能也行。
做拼表,表一得會員數(shù)量字段,限制年=2016
表2得合計數(shù)量,限制年=2016
要不就只能讓底層加一列進行合計,但是這樣子的話,表的結構比較固定,不太好
哈哈,你可能在大學中學習《數(shù)據(jù)庫系統(tǒng)概論》沒有學好數(shù)據(jù)查詢吧,回想一下吧。。。。。。
你要計算某行的值,首先必須會查詢到某行、某列的值,這你肯定是沒有問題的。但你的問題是:
●在同一個表中查詢某兩行的值,從而經(jīng)過計算保存到另外某行中去。
解決的方法可參考《數(shù)據(jù)庫系統(tǒng)概論》,我簡要介紹一下:
1.采用“自身連接”的方法,把你的表通過別名進行自身連接,這樣就形成了兩個表,寫到不同的行也簡單,不外乎再建立三個別名表即可。這樣在三個別名表中就可以根據(jù)不同的條件信息,分別定位在不同的行中,讀寫非常方便。
2.采用“多表連接”的方法,這種方法麻煩一些,其原理與自身連接完全相同,只不過是你編程時自己定義的表名,也是從二個表中讀取、運算后寫入到某個文件的某行中,也不復雜,沒有第一種方法顯得正規(guī)。
3.如果非要使用1個表,在該表中完成你提出的任務,也是可以完成的,那就需要編程實現(xiàn),利用已知的某列條件選擇出某行,記錄指針定位到某行,然后在指定的列中寫入數(shù)據(jù),中間讀取和運算的結果都可以暫存在內(nèi)存變量中。
以上回答不知你是否清楚。
oracle中sum分組取值/匯總值用如下方法。
如emp表中有如下數(shù)據(jù):
現(xiàn)要按deptno分組,求每組中sal的值/匯總值,可用如下語句:
select?deptno,sum(sal)/(select?sum(sal)?from?emp)?from?emp?group?by?deptno;
查詢結果:
當前文章:oracle怎么算值 oracle公式計算
文章網(wǎng)址:http://m.newbst.com/article48/hjpihp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、定制開發(fā)、網(wǎng)站排名、靜態(tài)網(wǎng)站、品牌網(wǎng)站制作、網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)