構建表的上下級關係
有乙個需求,表中資料沒有關係,如同乙個型別的,有多個出庫時間。
**--
構建表的上下級關係
--可以對同乙個產品的,有層次關係
--使用row_number(),來構建,最上上一級為0
insert
into
stock([
no]--編號,[
quantity],
[id],
[productsysno],
[intime],
[parentid
])
select
no, id,productsysno,id-1
parentid
from
(select
a.no, a.quantity,row_number()
over
(partition
bya.productsysno
order
byb.intime
asc) id ,
productsysno,intime
from
dbo.po_it a
inner
join
po b
ona.posysno
=b.sysno
andb.status=4
) t效果如圖:
遞迴累加同一產品的入庫數量
with
product_cte1(sysno,productsysno,id,lastqty,quantity,
level)as
(select
[poitemsysno
], productsysno,id,quantity,quantity,
1level
from
item_stock
where
parentid=0
union
allselecte.[
poitemsysno
],e.productsysno,e.id id,d.quantity,e.quantity
+d.quantity,
level+1
from
dbo.item_stock
ase,product_cte1 asd
where
e.parentid
=d.id
ande.productsysno
=d.productsysno)--
檢視資料
select
*from
product_cte1
option
(maxrecursion 0)
SQL資料表層面操作(DDL)
ddl data definition language 資料定義語言 用於對資料庫和資料表的操作,因為操作物件有兩個 資料庫和資料表 所以我們要在每個命令之後 create drop alter show後面加上database或者table 表明自己操作的物件。這篇文章主要講述對資料表 tabl...
使用SSH如何構建架構層次
在搭建系統的架構時我們採用了ssh ajax 等方式構建的。我們一直說要層次分明,思路清晰,可現在都比較糟糕。比如 jsp頁面用來顯示資料的,css用來美化頁面,js用來控制頁面的。現在很多頁面中什麼都有了,臭味很多。在後台我們也分了action,service,dao層,原本action用來控制排...
使用SSH如何構建架構層次
在搭建系統的架構時我們採用了ssh ajax 等方式構建的。我們一直說要層次分明,思路清晰,可現在都比較糟糕。比如 jsp頁面用來顯示資料的,css用來美化頁面,js用來控制頁面的。現在很多頁面中什麼都有了,臭味很多。在後台我們也分了action,service,dao層,原本action用來控制排...