kitcat_m18
جمعه 15 خرداد 1394, 13:51 عصر
سلام یه سلکت زدم به این صورت:
Select
'01025001000000000000000000000' as MyKcod,
T1.F_CodeIndependent,
Sum(T1.F_Bed) As SumBedCodeIndependent,
MAx(T2.F_CodeTotal) As F_CodeTotal,
MAx(T2.SumBedCodeTotal) As SumBedCodeTotal
From
(
Select
Max(F_Kcod) As F_Kcod,
MAx(F_CodeTotal) As F_CodeTotal,
Sum(F_Bed) As SumBedCodeTotal
From T_Document_93
Where LEFT(F_Kcod,5)=LEFT('01025001000000000000000000000 ',5)
Group By F_CodeIndependent
)
T2 Right join T_Document_93 T1 on T1.F_Kcod=T2.F_Kcod
Where LEFT(T1.F_Kcod,2)=LEFT('01025001000000000000000000 000',2)
Group By F_CodeIndependent
اینم خروجی
SumBedCodeTotal
F_CodeTotal
SumBedCodeIndependent
F_CodeIndependent
MyKcod
195000
025
1564582227
01
01025001000000000000000000000
همونطور که مشخصه یه بار اومدم اونایی که Left فیلد F_Kcod به طول 2 برابر مقدار داده شده است رو در آوردم و جمعش رو نشون دادم و بعد یه بار اومدم اونایی که Left فیلد F_Kcod به طول 5 برابر مقدار داده شده است رو در آوردم و جمعش رو نشون دادم.
این قسمت برای یه برنامه حسابداریه که می خوام در سطوح مختلف حسابداری (مستقل، کل، معین و ..) جمع ها رو به دست بیارم
من در حال حاضر باید اینکارو برای 10 سطح کدینگ انجام بدم که باعث نوشتن یه کوئری بزرگ میشه
حالا می خوام بدونم راه بهتری برای این کار هست یا نه
Select
'01025001000000000000000000000' as MyKcod,
T1.F_CodeIndependent,
Sum(T1.F_Bed) As SumBedCodeIndependent,
MAx(T2.F_CodeTotal) As F_CodeTotal,
MAx(T2.SumBedCodeTotal) As SumBedCodeTotal
From
(
Select
Max(F_Kcod) As F_Kcod,
MAx(F_CodeTotal) As F_CodeTotal,
Sum(F_Bed) As SumBedCodeTotal
From T_Document_93
Where LEFT(F_Kcod,5)=LEFT('01025001000000000000000000000 ',5)
Group By F_CodeIndependent
)
T2 Right join T_Document_93 T1 on T1.F_Kcod=T2.F_Kcod
Where LEFT(T1.F_Kcod,2)=LEFT('01025001000000000000000000 000',2)
Group By F_CodeIndependent
اینم خروجی
SumBedCodeTotal
F_CodeTotal
SumBedCodeIndependent
F_CodeIndependent
MyKcod
195000
025
1564582227
01
01025001000000000000000000000
همونطور که مشخصه یه بار اومدم اونایی که Left فیلد F_Kcod به طول 2 برابر مقدار داده شده است رو در آوردم و جمعش رو نشون دادم و بعد یه بار اومدم اونایی که Left فیلد F_Kcod به طول 5 برابر مقدار داده شده است رو در آوردم و جمعش رو نشون دادم.
این قسمت برای یه برنامه حسابداریه که می خوام در سطوح مختلف حسابداری (مستقل، کل، معین و ..) جمع ها رو به دست بیارم
من در حال حاضر باید اینکارو برای 10 سطح کدینگ انجام بدم که باعث نوشتن یه کوئری بزرگ میشه
حالا می خوام بدونم راه بهتری برای این کار هست یا نه