PDA

View Full Version : بدست آوردن اطلاعات بین دو تاریخ از نوع Date در SQL



Mahdi_S_T
جمعه 29 خرداد 1383, 21:42 عصر
با سلام

لطفا دوستانی که از کامپوننت آقای فراهانی استفاده می کنند در مورد نوشتن دستور لازم توسط SQL در Query جهت بدست آوردن اطلاعات بین دو تاریخ مرا راهنمایی کنند ( همانطور که میدانید ShDatePicker همانند یک MaskEdit است که خروجی آن از نوع Date است ) . :?:

لطفا از Params در Query نیز استفاده شود .

Mohammad S
یک شنبه 31 خرداد 1383, 18:28 عصر
چرا از خود ایشان سوال نمی کنید؟

بدست آوردن اطلاعات بین دو تاریخ
منظورتان از اطلاعات بین دو تاریخ چیست؟

سار
دوشنبه 01 تیر 1383, 06:06 صبح
با سلام

لطفا دوستانی که از کامپوننت آقای فراهانی استفاده می کنند در مورد نوشتن دستور لازم توسط SQL در Query جهت بدست آوردن اطلاعات بین دو تاریخ مرا راهنمایی کنند ( همانطور که میدانید ShDatePicker همانند یک MaskEdit است که خروجی آن از نوع Date است ) . :?:

لطفا از Params در Query نیز استفاده شود .

اگر مشکلتون تغییر نوع داده ها است از توابع StrToDate, DateToStr استفاده کنید.

Mahdi_S_T
چهارشنبه 03 تیر 1383, 17:57 عصر
دوست گرامی Mohammad S

در جوابهای قبلی جنابعالی در مورد تاریخ شما مشابه همین سوال بنده را برای دو تاریخ از نوع رشته انجام دادید حال من می خواهم تاریخی که در ShDatepicker وارد می شود را در Params ریخته و بعد در Query توسط SQL عمل فیلتر اطلاعات را بین دو تاریخی که در Params تعریف شده بدست آوریم من این کار را انجام میدهم اما ظاهرا جایی اشتباه می کنم لطفا جنابعالی کد مد نظرتان را بنوسید .با تشکر :?:

Mohammad S
جمعه 05 تیر 1383, 19:46 عصر
آقا مهدی من درست متوجه سوال شما نشدم. اگر قرار است دو تا تاریخ باشد پس به دو شی ShDatepicker نیاز است ولی به هر حال من دو شی ExShDatePicker بر روی فرم قرار داده ام که کاربر دو تاریخ انتخاب می کند و در جدول مورد نظر تمام تاریخ های بین این دو تاریخ فقط نمایش داده می شود. در فایل ضمیمه ای که آمده، من از اس کیو ال سرور استفاده کرده ام و در دیتابیسی به نام Test جدولی به نام tb_Date که شامل فیلدهای ID از نوع int و Name از نوع nvarchar با طول 30 و MDate از نوع datetime می باشد ساخته ام. از طریق ADO هم اتصال به اس کیو ال سرور را برقرار کرده ام. شما باید این اتصالات را دوباره با یوزر و پسورد خودتان انجام دهید.
دستور SQL مورد نظر:

ADODataSet1.Close;
ADODataSet1.CommandText:='SELECT * FROM tb_Date WHERE (MDate BETWEEN '+ QuotedStr(DateToStr(ExShDatePicker1.Date))+' AND '+QuotedStr(DateToStr(ExShDatePicker2.Date))+')';
ADODataSet1.Open;

موفق باشید :wink: