یک SP  جهت استفاده در خروجی مدیریتی ذیل طراحی نمائید.

           

                        واحد سازمانی                  تعداد کارکنان                    تعداد تحت تکفل

           
     
 
     
 


           

           
     
 

 


همانطور که از ظاهر جدول مشاهده می گردد به دو روش گزارش مذکور قابل وصول است.

 

  جدول اصلی جدول Unit  و جداول ارتباطی Child , Person  خواهند بود بنابراین خواهیم داشت :

Create  Proc MIS1 AS

Select  UnitName ,

(Select  Count ()  From  Person  Where  UnitID = U.UnitID )As PCnt ,

(Select  Count ()  From  Child  Where

(Select UnitID From Person Where PrsID=Child.PrsID)=U.UnitID)As TCnt,

From  Unit  As  U

Order  By  UnitName

  جدول اصلیPerson  و جدول ارتباطیChild ,Unit خواهند بود بنابراین خواهیم داشت:

 

Create  Proc  MIS2 AS

Select  (Select  UnitName Form Unit Where UnitID = P1.UnitID)As UnitName,

Count () As PCnt,

(Select Count() From Child Where (Select UnitID From Person P2 Where PrsID

= Child.PrsID ) = P1.UnitID ) As  TCnt

From  Person P1

Group  By  UnitID

Order  By  1

 

  اختلاف اطلاعات نمایش داده شده در دو روش اول و دوم را تشریح نمائید.

 

یکSP  طراحی کنید که فهرست کارکنانی را که بین 3 تا 6  تحت تکفل دارند را استخراج نماید.

 

به منظور سهولت در طراحی جدول Person  را بعنوان جدول اصلی در نظر می گیریم بنابراین خواهیم داشت :

 

Create  Proc  MySP1 AS

Select  P.,

(Select  Count() From Child  C  Where PrsID = P.PrsID )As  Cnt

From  Person  As P

Where  (Select  Count () From Child Where  PrsID= P.PrsID)   BetWeen 3 and 6

Order  By  PrsID

 

ادامه مثالها در پست بعدی ...

منتظر ما باشید

مو فق باشید