سلام
من می خوام از جدول a که شامل فروش محصولاتم هست و از جدول b که شامل فروش تکی محصولاتم هست یه سری فیلد ها مثل تعداد فروخته شده ، تاریخ ، نام محصول و ... رو با هم نشون بدم
پیشنهاد شما کدوم روشه ؟
سلام
من می خوام از جدول a که شامل فروش محصولاتم هست و از جدول b که شامل فروش تکی محصولاتم هست یه سری فیلد ها مثل تعداد فروخته شده ، تاریخ ، نام محصول و ... رو با هم نشون بدم
پیشنهاد شما کدوم روشه ؟
لطفا ساختار جداولتان را اينجا قرار دهيد
جدول محصول : id,name,price,type,...
جدول جزئیات فاکتور :id ,masterFactorId,ProductId,count,...
جدول تک فروشی : id , productId,count ,date,...
جدول فاکتور اصلی : id,CustomerId,date,..
حالا می خوام توی خروجیم تمام جنس های فروخته شده تو جدولهای factorDetail, تک فروشی رو داشته باشم با تاریخ و قیمت و تعداد فروخته شده .
کسی نیست نظر داشته باشه ؟!!
سلام.این رو شما میتونید با یک join انجام بدید.
مانند :
Select TF.*,Tfr.*,TfT.* from table_HeaderFActor as Tf
inner join Table_factordetail as Tfr on tf.code=tfr.code
Inner join table_FActorTak as TFT on tfr.id=tft.id
من در این دستور ابتدا جدول هدر فاکتور رو با جزئیات فاکتور join کردم و براساس کد فاکتور به هم متصل کردم بعد جدول ریز فاکتور رو به جدول تک فروشی وصل کردم براساس فیلد id/
در ضمن در Select گفتم تمامی فیلدهارو بیاره که شما میتونی نام فیلدهایی که نیاز دارید رو بنویسید.
موفق باشید
Telegram : @SQL_Server
با کد زیر تست کنید:
تصور من از مسئله این است که امکان دارد کالای در فروش تکی محصولات باشد که در لیست فروش محصولات وجود نداشته باشد در غیر اینصورت جواب آقای صادقیان صحیح می باشدSELECT P.NAME,P.Price,F.Date,SUM(F.COUNT),'فروش محصولات'
FROM Product P INNER JOIN HeaderFActor H ON F.productId = P.ID
INNER Join FActorDetail F ON H.id = F.ID
GROUP BY P.NAME,P.Price,F.Date
UNION ALL
SELECT P.NAME,P.Price,F.Date,SUM(F.COUNT),'تک فروشی'
FROM Product P INNER JOIN FActorTak F ON P.Id = F.productId
GROUP BY P.NAME,P.Price,F.Date
شما این مدل رو در نظر بگیرید
من میخوام این فیلد ها رو در روجی داشته باشم :
نام محصول
قیمت محصول
تعداد فروخته شده
تاریخ فروش
این خروجی می خوام شامل تمام محصولات فروخته شده در تک فروشی و فروش کلی بشه .
ممنون از توجهتون
با کد زیر تست کنید:
فکر کنم پایگاه داده شما اکسس باشه اگر به این شکل جواب نداد ار دو تا کوئری در اکسس استفاده کنید یکی برای Select داخلی و دیگر بر روی کوئری اول و جدول ProductSELECT P.NAME,P.Price,L.Date,SUM(L.COUNT)
FROM(
SELECT F.productId,F.Date,F.COUNT
FROM HeaderFActor H INNER Join FActorDetail F ON H.id = F.ID
UNION ALL
SELECT F.productId ,F.Date,F.COUNT
FROM FActorTak F) AS List L,Product P
WHERE L.productId = P.productId
GROUP BY P.NAME,P.Price,L.Date