廢話不多說 !!!
我的需求是這樣的,一條信息可以有多個部門驗收,當所有的部門驗收完成之后呢,才把最后驗收的那條數據顯示出來。
直接看表結構
以上就是三張表分別查詢出來的數據,注意標紅的地方才是重點。添加的數據時,分別先添加 BT_ReleaseAuditor 表,然后添加BT_HandleMessage表。添加時把驗收部門名稱添加到這個字段中”CollectDepartment“,這個字段是string類型。修改,添加時取字段”CollectDepartment“的值。然后循環條件到這個表”BT_ApplyCheck“。驗收時取這個表里面是數據。
看最后查詢語句:
select distinct r.RId, * from [dbo].[BT_ApplyCheck] c,[dbo].[BT_ReleaseAuditor] r where c.RId=r.RId
and c.RId in (select RId from [BT_ApplyCheck] group by RId,CollectResult having count(*)>1 and CollectResult=0)
and CollectCount in (select Max(CollectCount) from [BT_ApplyCheck])