PDA

View Full Version : تابع sum در join چند جدول



maryamsaedi91
یک شنبه 02 آذر 1393, 09:22 صبح
با سلام خدمت دوستان
من یه کوئری نوشتم قبلا و مشکلی هم نداره ولی الان میخوام تابع sum به اون اضافه کنم ولی خطا میدهد که باید به آن group by اضافه کنم ولی هر کاری کردم بازم نتوستم درستش کنم کسی از دوستان هست بتونه به من کمک کنه
کوئری ک نوشته بودم به صورت زیر است و میخواهم (sum(tord.RowPrice را به ان اضافه کنم


select tp.Idp,tp.FarsName,tp.Price,tord.RowPrice,tor.Orde rNumber,tor.UserID,tord.ProductID,tord.Quantity,to rd.RowPrice
from tbl_Product tp,tbl_Orders tor,tbl_OrderDetails tord where
tp.Idp=tord.ProductID and tor.OrderNumber=@OrderNumber and tor.OrderNumber=tord.OrderNumber

تایپیک های زیادی هم دیدم ولی تو کوئری خودم نتونستم پیاده کنم.

ممنون میشم بتونید کمکم کنید :لبخندساده:

ham3d1988
یک شنبه 02 آذر 1393, 11:56 صبح
سلام


select tor.OrderNumber,tor.UserID,sum(tord.RowPrice)
from tbl_Product tp,tbl_Orders tor,tbl_OrderDetails tord where
tp.Idp=tord.ProductID and tor.OrderNumber=@OrderNumber and tor.OrderNumber=tord.OrderNumber
group by tor.OrderNumber,tor.UserID

maryamsaedi91
یک شنبه 02 آذر 1393, 13:32 عصر
سلام دوستان
من اون کارو کردم درسته یجواریی ولی وقتی یسری فیلد بهش اضافه کردم خب الان کار نمیده یعنی واسه قیمت کل یه فیلد برنمیگردونه

select tor.OrderNumber,tor.UserID,sum(tord.RowPrice) as totalprice ,tord.ProductID,tord.Quantity,tp.Idp,tp.FarsName,t p.Price
from tbl_Product tp,tbl_Orders tor,tbl_OrderDetails tord where
tp.Idp=tord.ProductID and tor.OrderNumber='635522480030782528' and tor.OrderNumber=tord.OrderNumber
group by tor.OrderNumber,tor.UserID,tp.Idp,tp.FarsName,tp.P rice,tord.ProductID,tord.Quantity

ham3d1988
دوشنبه 03 آذر 1393, 07:46 صبح
سلام
ببینید وقتی شما قیمت کل رو میخوای نباید بر اساس کد محصول گروه بندی کنی
وقتی که بر اساس کد محصول گروه بندی می کنی به ازای هر محصول موجود یک سطر رو بر میگرده
حالا اگه شما دنبال ساختن فاکتور و ایجاد جمع کل آخرش هستی بهتره جمع کل رو توی ابزار گزارش گیریت بر اساس محصولات موجود توی سفارش بگیری.
راه دیگه هم اینه که توی جدول Orders برای هر سفارش جمع مبالغ فیش صادر شده رو بعد نهایی شدن سفارش نگهداری کنید.