خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را


استفاده از تابع ()DAY در SQL Server

استفاده از تابع ()DAY در SQL Server
در SQL Server می توانید از تابع DAY برای برگرداندن قسمت "روز" یک تاریخ استفاده کنید. خروجی این تابع یک عدد صحیح خواهد بود که نشان دهنده روز از ماه است (نه روز هفته). Syntax استفاده از این تابع بصورت زیر می باشد:

نرم افزار سامانه مودیان راهکار



DAY ( date )

به جای date می توانید مقادیری از انواع دیتاتایپ های زیر را وارد کنید:

date
datetime
datetimeoffset
datetime2
smalldatetime
time

در ادامه با مثالهایی بصورت عملی با طرز کار و نحوه استفاده این تابع بیشتر آشنا خواهید شد.

SELECT
SYSDATETIME() AS 'Date',
DAY(SYSDATETIME()) AS 'Day';

+-----------------------------+-------+
| Date | Day |
|-----------------------------+-------|
| 2018-06-18 00:20:22.1284540 | 18 |
+-----------------------------+-------+

بنابراین تابع DAY توانست روز را از مقدار datetime2 استخراج کند (که توسط تابع SYSDATETIME بازگردانده شد).
در مثال زیر با اینکه تاریخ به صورت یک رشته ولی به طور صحیح درج شده، باز هم تابع DAY می تواند روز را دل آن بیرون بکشد.

SELECT DAY('2019-01-07') AS Result;

+----------+
| Result |
|----------|
| 7 |
+----------+

در مثال زیر، تاریخ با فرمت دیگری درج شده است:

SELECT DAY('07/01/2017') AS Result;

+----------+
| Result |
|----------|
| 1 |
+----------+

با این حال، بهتر است از استفاده تاریخ در چنین فرمت هایی خودداری کنید. اگر که باید این کار را انجام دهید، باید مراقب تنظیمات زبان و یا تنظیمات فرمت تاریخ Session جاری باشید.
خروجی مثال قبلی به تنظیمات زبان و یا تنظیمات فرمت تاریخ Session فعلی بستگی دارد. وقتی زبان را تنظیم می کنیم(تغییر دهیم)، فرمت تاریخ هم به طور ضمنی تنظیم می شود. وقتی زبان را British تنظیم کنیم، خروجی متفاوتی نسبت به زمانی که آمریکایی تنظیم کنیم، دریافت خواهیم کرد با اینکه هر دو کوئری مشابه هم هستند:

SET LANGUAGE British;
SELECT DAY('07/01/2017') AS Result;

+----------+
| Result |
|----------|
| 7 |
+----------+

SET LANGUAGE us_English;
SELECT DAY('07/01/2017') AS Result;

+----------+
| Result |
|----------|
| 1 |
+----------+

تنظیمات فرمت تاریخ می تواند تنظیمات زبان را نادیده بگیرد، بنابراین شما باید از این تنظیم مطلع باشید. به عنوان مثال، ما می توانیم از us_English برای زبان خود (که دارای فرمت تاریخ پیش فرض mdy است) استفاده کنیم، اما می توانیم فرمت تاریخ را dmy کنیم. لطفا به کوئری فوق و خروجی آن دقت کنید.
در اینجا ، ما زبان را به us_English تنظیم کردیم(که صراحتا این زبان، فرمت تاریخ مربوط به خود را تنظیم می کند) ، سپس فرمت تاریخ را بصورت dmy قرار می دهیم.

SET LANGUAGE us_English;
SET DATEFORMAT dmy;
SELECT DAY('07/01/2017') AS Result;

+----------+
| Result |
|----------|
| 7 |
+----------+



نمایش دیدگاه ها (0 دیدگاه)

دیدگاه خود را ثبت کنید:

انتخاب تصویر ویرایش حذف
توجه! حداکثر حجم مجاز برای تصویر 500 کیلوبایت می باشد.


دسته بندی مطالب خوش آموز