PDA

View Full Version : چطور از جدول پرسنل آمار بگيرم؟



swallow.pa
دوشنبه 27 آذر 1391, 20:05 عصر
با سلام
من يك جدول دارم با نام Person
اون جدول فيلدهائي داره به نام GenderRef , DocumentRef كه يكي مربوط به جنسيت شامل مرد وزنه و يكي ديگه مدرك تحصيلي كه شامل ديپلم و فوق ديپلم و ليسانسه

حالا مي خوام بدونم چطور مي تونم سلكت كنم كه اين نتيجه رو داشته باشم با فرض اينكه جدول من 100 ركورد داره

جنسيت ديپلم فوق ديپلم ليسانس جمع
مرد 20 30 5 55
زن 0 30 15 45

ممنون مي شم راهنمائي كنيد

محمد سلیم آبادی
دوشنبه 27 آذر 1391, 20:17 عصر
شما طبق معمول بر مبنای زن و مرد بودن گروه بندی میکنید سپس با یکمی دستکاری کوئری جواب بدست میاد:


select GenderRef, SUM(CASE WHEN DocumentRef = 'Foqesh Diplom' THEN 1 ELSE 0 END) AS cnt_madrak_foqdiplom, ...,
COUNT(*) AS cnt
FROM Person
GROUP BY GenderRef;

swallow.pa
دوشنبه 27 آذر 1391, 20:31 عصر
اين تغييرات رو دادم اما خطائي اينطوري مشاهده كردم



SELECT COUNT(P.GenderRef) AS GenderRef,SUM(CASE WHEN P.DocumentRef=0 THEN 1 ELSE 0 END AS NODOC) FROM Person P
GROUP BY P.GenderRef


Msg 195, Level 15, State 10, Line 2
'SUM' is not a recognized built-in function name.

محمد سلیم آبادی
دوشنبه 27 آذر 1391, 20:37 عصر
اين تغييرات رو دادم اما خطائي اينطوري مشاهده كردم



SELECT GenderRef,COUNT(*) AS totals,SUM(CASE WHEN P.DocumentRef=0 THEN 1 ELSE 0 END) AS NODOC
FROM Person P
GROUP BY P.GenderRef


Msg 195, Level 15, State 10, Line 2
'SUM' is not a recognized built-in function name.
به تغیرات بالا توجه کن

swallow.pa
دوشنبه 27 آذر 1391, 20:51 عصر
ممنون
متوجه اشتباهم شدم
اول كه تايع count رو براي genderref بكار بردم
دوم كه الياس AS NODOC رو توي پرانتز نوشتم
اين دو تا اشتباهات من بود ولي با راهنمائي شما يك چيز جديد ياد گرفتم
خيلي خيلي ممنون