PDA

View Full Version : حرفه ای: یه Query !! اعصاب خوردکن



roxe77
شنبه 29 تیر 1392, 17:17 عصر
کسی میتونه راحع به در آوردن این query بهم کمک کنه ؟ ناجور لازم دارم
سلام
ببینین ما به فرض 2 تا ایتم داریم s1 , s2 این دو ایتم دارای مشخصاتی هستن مثل تاریخ ساخت و هرکدوم از این ایتم ها یه سن مشخصی از زمان تولیدشون دارن که به هفته حساب میشه

هر روز هم یه مقداری به عنوان value به این ایتم ها نسبت داده میشه مثل دما ( همینطور ما یه جدول سن داریم که خودش اتومات تولید میشه ) هرکدوم از این ایتم ها سن خودشون رو دارن مکنه ایتم s1 چند هفته بزرگتر از s2 باشه - چیزی که ما میخاییم گذارش برای کل سیستم هست مثل میخوایم تو هفته یک میانگین دما برای کل ایتم ها چقدر هست یعنی query هفته جنریت کنه و بره دنبال جدول اکتیوتی ها وا از تاریخشون بتونه هفته یک ایتم ها رو تشخص بده ممکنه چند تا ایتم داشته باشیم که تاریخاشون متفاوته ولی منظور ما تاریخ نیست سن اون ها به هفته هست که باید میانگین کل سیستم رو بدست بیاره اگه توضیح بیشتری خواستین بگین دوستان
107598

mthreat.info
شنبه 29 تیر 1392, 18:58 عصر
میشه بیشتر توضیح بدید شما براساس age week میخواهید avg val company رو بدست بیارید؟ avg val company چی هست؟ با چه فناوری؟ linq یا ef یا sql

ordebehesht
شنبه 29 تیر 1392, 19:31 عصر
توضیح بده عزیز منظورت چیه هدف چیه

pooria_googooli
شنبه 29 تیر 1392, 19:32 عصر
select dbo.age.age , AVG(dbo.value.value) from dbo.value inner join dbo.age on dbo.age.ID1=dbo.value.ID group by dbo.age.age

pooria_googooli
شنبه 29 تیر 1392, 19:33 عصر
فقط اسم فیلد هاتو من تغییر دادم . مثلا به جای ID++ نوشتم ID1 و به جای week نوشتم age

roxe77
شنبه 29 تیر 1392, 23:26 عصر
سلام
ببینین ما به فرض 2 تا ایتم داریم s1 , s2 این دو ایتم دارای مشخصاتی هستن مثل تاریخ ساخت و هرکدوم از این ایتم ها یه سن مشخصی از زمان تولیدشون دارن که به هفته حساب میشه

هر روز هم یه مقداری به عنوان value به این ایتم ها نسبت داده میشه مثل دما ( همینطور ما یه جدول سن داریم که خودش اتومات تولید میشه ) هرکدوم از این ایتم ها سن خودشون رو دارن مکنه ایتم s1 چند هفته بزرگتر از s2 باشه - چیزی که ما میخاییم گذارش برای کل سیستم هست مثل میخوایم تو هفته یک میانگین دما برای کل ایتم ها چقدر هست یعنی query هفته جنریت کنه و بره دنبال جدول اکتیوتی ها وا از تاریخشون بتونه هفته یک ایتم ها رو تشخص بده ممکنه چند تا ایتم داشته باشیم که تاریخاشون متفاوته ولی منظور ما تاریخ نیست سن اون ها به هفته هست که باید میانگین کل سیستم رو بدست بیاره اگه توضیح بیشتری خواستین بگین دوستان

roxe77
یک شنبه 30 تیر 1392, 00:05 صبح
SELECT Week ,StartDate,EndDate

,(SELECT AVG(VALUE) FROM Activety WHERE AcDate>=StartDate AND AcDate<=EndDate AND ItemID=1)

FROM ItemAge

WHERE ItemID=1


1 ====== 2012-01-10== 2012-01-16 ===6.71428571428571
2 ======2012-01-17== 2012-01-23 ===4.85714285714286
3 ======2012-01-24 ==2012-01-30 ===3.8

این واسه یه ایتم هست حالا اگه واسه دو ایتم رو باهم بخواهیم دربیاریم!؟؟؟!؟

roxe77
یک شنبه 30 تیر 1392, 02:01 صبح
بازم خودم دوستان
درست شد در حد تیم ملی
SELECT DISTINCT Week, AVG(Expr) AS Expr1
FROM (SELECT DISTINCT Week, ISNULL
((SELECT AVG(Value) AS Expr1
FROM dbo.Activety
WHERE (AcDate >= dbo.ItemAge.StartDate) AND (AcDate <= dbo.ItemAge.EndDate) AND (ItemID = dbo.ItemAge.ItemID)), 0) AS Expr
FROM dbo.ItemAge) AS derivedtbl_1
GROUP BY Week
week
1 --------------- 6.8571428571428577
2 ---------------5.8035714285714288
3------------------------ 1.9