فهرست مطالب:

چگونه روزهای کاری را در SQL بشمارم؟
چگونه روزهای کاری را در SQL بشمارم؟

تصویری: چگونه روزهای کاری را در SQL بشمارم؟

تصویری: چگونه روزهای کاری را در SQL بشمارم؟
تصویری: چگونه به آسانی بررسی کنیم که پرس و جوی SQL خود را شکسته اید 2024, آوریل
Anonim

در این رویکرد، ما چندین مرحله را به کار می گیریم که از توابع DATEDIFF و DATEPART برای تعیین موفقیت آمیز روزهای کاری استفاده می کنیم

  1. مرحله 1: محاسبه تعداد کل روزها بین یک محدوده تاریخ
  2. گام 2: محاسبه تعداد کل هفته ها بین یک محدوده تاریخ.
  3. مرحله 3: تعطیلات آخر هفته ناقص را حذف کنید.

به همین سادگی، چگونه می توانم روزهای بین دو تاریخ را در SQL Server بشمارم؟

PRINT DATEDIFF (DAY، '1/1/2011'، '3/1/2011') آنچه را که دنبال آن هستید به شما می دهد. این می دهد تعداد بار از مرز نیمه شب عبور می کند بین را دو تاریخ . اگر هر دو را شامل می‌شوید، ممکن است تصمیم بگیرید که یکی را به این اضافه کنید تاریخ در شمردن - یا اگر نمی‌خواهید یکی را درج کنید، یکی را کم کنید تاریخ.

به همین ترتیب، چگونه می توانم روزها را به استثنای تعطیلات آخر هفته در SQL محاسبه کنم؟ شما به سادگی می توانید از تابع datediff استفاده کنید sql . و سپس می توانید کم کنید آخر هفته ها در صورت وجود بین آن تاریخ ها به عنوان مثال پرس و جو زیر را بررسی کنید. و اگر شما بخواهید حذف کردن تعطیلات هم هست، پس شما هم می توانید محاسبه تعطیلات بین تاریخ شروع / پایان و می تواند آن را از انتخاب نهایی کم کند.

خوب، چگونه روزهای کاری را محاسبه می کنید؟

به محاسبه تعداد روزهای کاری بین دو تاریخ، می توانید از تابع NETWORKDAYS استفاده کنید. NETWORKDAYS به طور خودکار تعطیلات آخر هفته را حذف می کند و می تواند به صورت اختیاری لیست سفارشی تعطیلات را نیز حذف کند. توجه داشته باشید که NETWORKDAYS در صورت وجود تاریخ شروع و پایان را در محاسبه لحاظ می کند روزهای کاری.

چگونه تعداد روزهای یک ماه را در SQL بشمارم؟

فرآیند: وقتی از EOMONTH استفاده می‌شود، از هر فرمت تاریخی که استفاده می‌کنیم، به فرمت DateTime تبدیل می‌شود. SQL -سرور سپس خروجی تاریخ EOMONTH() 2016-12-31 با 2016 به عنوان Year، 12 به عنوان خواهد بود. ماه و 31 به عنوان روزها . این خروجی زمانی که به Day() منتقل می شود به شما می دهد کل روز شمارش در ماه.

توصیه شده: