PDA

View Full Version : select بین 2تاریخ در mysql



omidabedi
شنبه 06 اردیبهشت 1393, 02:13 صبح
باسلام
من تو mysql یک فیلد date دارم که تاریخ ثبت رکورد رو بصورت timestamp ذخیره میکنم
حالا میخوام سرچی بنویسم که رکورد های بین 2تاریخی که کاربر وارد میکنه رو برگردونه
کوئریش چگونه میشه؟از لحاظ بهینه بودن چجوری میشه بهتر نوشتش؟

ghasemweb
شنبه 06 اردیبهشت 1393, 10:45 صبح
مشکلی نیست واسه بهینگی چون به هر حال نیاز پروژه شماست که بین دو تاریخ رو سرچ کنی کوئریش هم ساده است فکر کن میخوای بین دو عدد کوئری بگیری مثلا بزرگتر از x و کوچیکتر از y

omidabedi
شنبه 06 اردیبهشت 1393, 10:57 صبح
مشکلی نیست واسه بهینگی چون به هر حال نیاز پروژه شماست که بین دو تاریخ رو سرچ کنی کوئریش هم ساده است فکر کن میخوای بین دو عدد کوئری بگیری مثلا بزرگتر از x و کوچیکتر از y

خب چون با timestamp ذخیره کردم بصورت ثانیه هست پس اگه من مدت رو 1سال پیش تا الان تعیین کنم در نتیجه باید 1سال رو هرسانیه رو چک کنه برام برگردونه پس خیلی غیراستاندارد هست.
باید بصورت ماه و روز ذخیره میکردم که بشه.

ببینید برای تاریخ شمسی بهترین کار این نیست که تاریخ هارو ب میلادی ذخیره کنیم تو دیتابیس و برای خواندنش تبدیل کنیم به timestamp و سپس تبدیل به شمسی و نمایش.
برای ذخیره هم که برعکس همین راه.

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

omidfive
شنبه 06 اردیبهشت 1393, 11:48 صبح
یکی از راه ها اینه که تو جدولتون تاریخ رو بدون ساعت و ثانیه تو یه فیلد جداگانه ذخیره کنین و Search رو روی اون فیلد ها انجام بدین