sql server - SQL Sum Column Between Two Dates -
i have problem sum price column between 2 dates in sql server.
i have query :
select oslp.slpname salesman, cast(oinv.doctotal float) achiev, oinv.taxdate oinv inner join inv1 on inv1.docentry = oinv.docentry inner join oslp on oinv.slpcode = oslp.slpcode inner join oitm on inv1.itemcode = oitm.itemcode inner join omrc on oitm.firmcode = omrc.firmcode inner join ocrd on oinv.cardcode = ocrd.cardcode oslp.slpname '01-2 ika' , oinv.taxdate between '20160804' , '20160806' group oslp.slpname, oinv.doctotal, oinv.taxdate
the result of query above :
i have added sum on "cast(oinv.doctotal float) achiev" :
cast(sum(oinv.doctotal) float) achiev
but, returns wrong result :
the correct result of achiev column on dates should 4906230
many help!
update (solved) have solved problem. add distinct sum query, because there duplicate of data in query.
query :
select oslp.slpname salesman, sum(cast(inv1.quantity float)) qty, sum(distinct cast(oinv.doctotal float)) achiev oinv inner join inv1 on inv1.docentry = oinv.docentry inner join oslp on oinv.slpcode = oslp.slpcode inner join oitm on inv1.itemcode = oitm.itemcode inner join omrc on oitm.firmcode = omrc.firmcode inner join ocrd on oinv.cardcode = ocrd.cardcode oslp.slpname '01-2 ika' , oinv.taxdate between '20160804' , '20160806' group oslp.slpname
thanks has helped me!
issue group .. remove oinv.doctotal group , sum below
select oslp.slpname salesman, sum(cast(oinv.doctotal float)) achiev, oinv.taxdate oinv inner join inv1 on inv1.docentry = oinv.docentry inner join oslp on oinv.slpcode = oslp.slpcode inner join oitm on inv1.itemcode = oitm.itemcode inner join omrc on oitm.firmcode = omrc.firmcode inner join ocrd on oinv.cardcode = ocrd.cardcode oslp.slpname '01-2 ika' , oinv.taxdate between '20160804' , '20160806' group oslp.slpname, oinv.taxdate
Comments
Post a Comment