PDA

View Full Version : دوستان مشکل این کد من چیه ؟



mpmsoft
شنبه 23 آذر 1387, 15:01 عصر
select distinct(left([date],7)),(select count(id) from service as ss where left([ss.date],7)=left([dd.date],7)) from service as dd


دوستان من یک جدول دارم که یکسری رکورد با تاریخ توش ثبت می شه

حالا من می خوام اون رو در یک چارت نمایش بدم پس بنابراین می خوام تعداد رکوردهای ثبت شده در ماههای مختلف به همراه نام ماه نمایش داده بشه


کد بالا اررور می ده

s_ahmadneya
شنبه 23 آذر 1387, 15:59 عصر
select distinct(left([date],7)),(select count(id) from service as ss where left([ss.date],7)=left([dd.date],7)) from service as dd


دوستان من یک جدول دارم که یکسری رکورد با تاریخ توش ثبت می شه

حالا من می خوام اون رو در یک چارت نمایش بدم پس بنابراین می خوام تعداد رکوردهای ثبت شده در ماههای مختلف به همراه نام ماه نمایش داده بشه


کد بالا اررور می ده

بنظرم کد پایین دو فیلدماه و تعداد رکورد ماه رو برگردونه


select id,count(id) from service group by id

mpmsoft
شنبه 23 آذر 1387, 21:43 عصر
دوست عزیز این روش جواب نداد

mannai29
یک شنبه 24 آذر 1387, 08:59 صبح
select (left([date],7)) as Mah,count(*) as Cnt from service group by (left([date],7))

mpmsoft
یک شنبه 24 آذر 1387, 12:12 عصر
با تشکر از شما دوست عزیز

من یک سوال دیگر داشتم من 2 جدول دارم که ساختارشون یکی هست و می خوام آماری که به دست میارم از ترکیب این دو جدول با هم باشه می شه منو راهنمایی کنید به چه شکل می تونم از union all در این دستور استفاده کنم

من این روش رو امتحان کردم جواب نداد



SELECT LEFT([date], 7) AS Mah, COUNT(id) AS Cnt
FROM (select id,LEFT([date], 7) from service union all (select id,LEFT([date], 7) from service2))
GROUP BY LEFT(date, 7)
ORDER BY mah

mannai29
یک شنبه 24 آذر 1387, 14:53 عصر
اول باید دو جدول را union کنید بعد روی هر دو آنها Select بزنید :

select (left([date],7)) as Mah,count(*) as Cnt
from
(
select [date] from service
UNION
select [date] from service2
)TBL1
group by (left([date],7))

mpmsoft
یک شنبه 24 آذر 1387, 16:59 عصر
خیلی ممنون دوست عزیز از لطفتون