PDA

View Full Version : گروه بندی بر اساس تاریخ ذخیره شده



pary_daryayi
جمعه 09 خرداد 1393, 18:32 عصر
سلام .
من از یک تابعی برای تبدیل تاریخ میلادی به شمسی استفاده میکنم و با استفاده از اون تابع ،از این فرمت برای ذخیره در دیتابیس استفاده میکنم.


pdate('Y-m-d')

که خروجی با این فرمت هست : 09-03-1393
نوع فیلد تاریخ هم در دیتابیس date تعریف کردم .

من میخوام در قسمت مدیریت برای مطالب ثبت شده در دیتابیس ، یک جستجو شبیه ورد پرس ایجاد کنم .
یعنی یک لیست باکس ایجاد بشه و تاریخ ها رو بصورت گروه بندی شده نمایش بده . (سال و ماه )
تو عکس نشون دادم .
میدونم باید از gruop by استفاده بشه ، اما در این مورد ، برای اینکه شبیه این عکس بشه منطقش رو دقیقا نمیدونم ، ممنون میشم راهنمایی کنید .

rezakho
جمعه 09 خرداد 1393, 23:08 عصر
با فرض اینکه نام فیلدتون date هست، کوئری زیر سه ستون رو برمیگردونه، اولی سال، دومی ماه و سومی تعداد مطلب در اون سال و ماه هست

SELECT SUBSTRING(date, 1, 4) as `year`,SUBSTRING(date, 6, 2) as `month`,count(*) as `count` FROM table
group by SUBSTRING(date, 1, 7)


البته این نکات رو هم بگم
این کوئری فقط تاریخ هایی رو که دارای مطلب هستند رو در میاره نه همه ماه ها رو (احتمالا همون چیزی هست که میخواید)
هم توی sql و هم در php که البته راحتتر هم هست، میتونید شماره ماه ها رو با اسمشون عوض کنید