PDA

View Full Version : نمايش نتيجه چند دستور Select



Saeed_m_Farid
جمعه 27 دی 1387, 11:37 صبح
سلام دوستان عزيز
تو اكسس اگه بخواهيم Count هايي با شرايط مختلف تو خروجي Select داشته باشيم چيكار ميشه كرد؟ مثلا من ميخوام تعداد ركوردها در حالتهاي مختلف يه فيلد خاص رو بدست بيارم، يعني يه چيزي شبيه اين :

SELECT Count1, Count2, Count3, Count4, ...
(
SELECT COUNT(*) as Count1 FROM MyTable WHERE (MyField = 1)
SELECT COUNT(*) as Count2 FROM MyTable WHERE (MyField = 2)
SELECT COUNT(*) as Count3 FROM MyTable WHERE (MyField = 3)
SELECT COUNT(*) as Count4 FROM MyTable WHERE (MyField = 4)
, ...
)
البته اين سودو كده چون نميدونم تو اكسس چطور ميشه همچين كارهايي كرد تو sql-server خيلي راحت تره، اينجا هركاري ميكنم Syntax error!
اگه دوستان راهنمايي كنن ممنون ميشم.

Saeed_m_Farid
جمعه 27 دی 1387, 11:51 صبح
البته من كد زير رو نوشتم ولي اگه واسه 10 تا حالت بخوام تعداد بگيرم كه خيلي كوئري مسخره اي ميشه، و مطمئنا راهش اين نيست؛ مگه نه؟!

SELECT Distinct (SELECT COUNT(*) As Cnt_Success
FROM MyTable
WHERE State = 1) as cnt1,
(SELECT COUNT(*) As Cnt_Unsuccess
FROM MyTable
WHERE State = 2) as cnt2 from MyTable

nabeel
جمعه 27 دی 1387, 12:20 عصر
سلام دوست عزیز

نیازی به نوشتن این دستورات دیده نمیشه
از دستور DCount جهت انجام اینکار استفاده کن
جهت اطلاع از نحوه عملکرد اون و دیدن مثالها به فایل Help اکسس مراجعه کن ( به دنبال Dcount بگردید )

موفق باشید