نمایش نتایج 1 تا 5 از 5

نام تاپیک: استفاده از دستور Between برای تاریخ فارسی

  1. #1
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    Iran
    پست
    104

    استفاده از دستور Between برای تاریخ فارسی

    با سلام


    من یک جدول دارم از نوع
    DBISAM
    که یک فیلد دارم که تاریخ های فارسی را در آن ذخیره می کنم چطوری میشه در یک
    query
    در دستورات اس کیو ال از فرمان
    Between
    برای این فیلد در شرط استفاده کرد
    و اگر نمی شود راه حل اینکه من رکوردهای خاصی در فاصله بین دو تاریخ را بخواهم بدست آورم چیست
    البته می دانم که این دیتابیس تا حدودی تاریخ فارسی را پشتیبانی می کند ولی مشکلات خاص خودش را دارد
    خلاصه اینکه یک راهنمائی توپ می خواهم

  2. #2
    کاربر تازه وارد آواتار alidll
    تاریخ عضویت
    دی 1383
    محل زندگی
    تهرون دود گرفته
    سن
    42
    پست
    59
    با سلام به دوستان

    SELECT DATE FROM TABLE
    WHERE DATE BETWEEN '1379/01/01' AND '1380/02/10';

  3. #3
    کاربر دائمی آواتار esi022
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    علم چال
    پست
    338
    سلام علیرضا
    date رو به چه صورت ذخیره می کنی؟
    آیا dbisam تاریخهایی مثل 30/2/1384 رو ذخیره میکنه؟( 30 فوریه 2005 وجود نداره )

  4. #4

    نقل قول: استفاده از دستور Between برای تاریخ فارسی

    توی اس کیو ال ، شاید یه جاهایی لازم باشه ، گزارشگیری زماندار انجام بدیم ، مثلا سفارشات یه هفته ی گذشته رو لیست کنیم ، یا شایدم یه ماه گذشته
    برای اینکار از کد پایین استفاده میکنیم :
    کد برای نمایش سفارشات یک هفته گذشته
    select * from Sefaresh where date>DATEADD(day,-7,GETDATE()) ;


    یک ماه گذشته
    select * from Sefaresh where date>DATEADD(month,-1,GETDATE()) ;

  5. #5

    نقل قول: استفاده از دستور Between برای تاریخ فارسی

    اصولا ذخیره مستقیم تاریخ شمسی و انجام مستقیم محاسبات بر روی اون با توجه به عدم پشتیبانی بانکهای اطلاعاتی از تاریخ شمسی ، کار درستی نیست
    یک راه ساده اینه که شما دو تا فیلد برای تاریخ داشته باشید یک فیلد برای تاریخ میلادی از نوع تاریخ و یک فیلد برای تاریخ شمسی از نوع رشته و یک تابع برای تبدیل تاریخ میلادی به شمسی
    در زمان ثبت و ویرایش اطلاعات ، تاریخ رو به میلادی ذخیره کنید و معادل شمسی ش رو هم به صورت رشته در فیلد دوم ذخیره کنید
    در زمان SELECT کردن هم محاسبات و شرط ها رو روی تاریخ میلادی انجام بدید اما فیلد تاریخ شمسی رو SELECT کنید و نمایش بدید
    در این صورت محدودیتی در دستورات SQL نخواهید داشت

قوانین ایجاد تاپیک در تالار

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