خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را
تابع ()SYSDATETIME در SQL Server
در SQL Server تابع SYSDATETIME تاریخ و زمان فعلی را به صورت (7)datetime2 برمی گرداند. در این پست مثال هایی از تابع () SYSDATETIME گردآوری شده است، از جمله اینکه چگونه می توانید از آن با سایر توابع برای بازگرداندن مقداری که به آن علاقه دارید استفاده کنید.
که به آن علاقه دارید استفاده کنید.
Syntax استفاده از تابع SYSDATETIME به صورت زیر می باشد:
همانطور که مشاهده می کنید، تابع مذکور نیاز به هیچ پارامتری ندارد و به همان صورت می توانید از آن استفاده کنید.
در SELECT زیر با استفاده از تابع SYSDATETIME، ساعت و تاریخ فعلی سیستم را مشاهده خواهید کرد:
همانطور که پیشتر هم گفته شد، خروجی تابع مذکور بصورت (7)datetime2 خواهد بود. datetime2 جزئیات بیشتری از تاریخ را در خروجی به شما نمایش میدهد.
اگر فقط بخشی از مقدار برگشتی مد نظر شماست، می توانید با استفاده از DATEPART فقط آن قسمت از تاریخ / ساعت مورد نظر خود را برگردانید..
بعضا برای دستیابی به یک نتیجه یکسان، بیش از یک راه وجود دارد. همین خروجی فوق را با استفاده از تابع MONTH هم می توانید بدست بیاورید:
هر دوی این توابع می توانند ماه جاری را برگرداندند ولی ماه را با عدد ماه نمایش می دهند. برای نمایش نام ماه می توانید از تابع DATENAME استفاده کنید:
بدست آوردن روز از سال در SQL Server
لیست کردن ماه های میلادی در SQL Server
بدست آوردن عدد و نام روز هفته در SQL Server
بدست آوردن نام ماه در SQL Server
همچنین می توانید از دیگر توابع T-SQL برای فرمت کردن تاریخ در صورت لزوم استفاده کنید. در اینجا مثالی از استفاده ی تابع FORMAT برای فرمت کردن Result وجود دارد:
برای نمایش تفاوت بین تاریخ فعلی و تاریخی دیگر می توانید از توابعی مانند DATEDIFF استفاده کنید. در این مثال با استفاده از تابع DATEADD، یک ماه به تاریخ فعلی اضافه می کنیم و سپس تفاوت تاریخ فعلی با آن تاریخ را بر حسب روز مشاهده می کنیم:
که به آن علاقه دارید استفاده کنید.
Syntax استفاده از تابع SYSDATETIME به صورت زیر می باشد:
SYSDATETIME ( )
همانطور که مشاهده می کنید، تابع مذکور نیاز به هیچ پارامتری ندارد و به همان صورت می توانید از آن استفاده کنید.
در SELECT زیر با استفاده از تابع SYSDATETIME، ساعت و تاریخ فعلی سیستم را مشاهده خواهید کرد:
SELECT SYSDATETIME() AS Result;
+-----------------------------+
| Result |
|-----------------------------|
| 2018-06-15 23:09:13.5852199 |
+-----------------------------+
همانطور که پیشتر هم گفته شد، خروجی تابع مذکور بصورت (7)datetime2 خواهد بود. datetime2 جزئیات بیشتری از تاریخ را در خروجی به شما نمایش میدهد.
اگر فقط بخشی از مقدار برگشتی مد نظر شماست، می توانید با استفاده از DATEPART فقط آن قسمت از تاریخ / ساعت مورد نظر خود را برگردانید..
SELECT DATEPART(month, SYSDATETIME()) AS Result;
+----------+
| Result |
|----------|
| 6 |
+----------+
بعضا برای دستیابی به یک نتیجه یکسان، بیش از یک راه وجود دارد. همین خروجی فوق را با استفاده از تابع MONTH هم می توانید بدست بیاورید:
SELECT MONTH(SYSDATETIME()) AS Result;
+----------+
| Result |
|----------|
| 6 |
+----------+
هر دوی این توابع می توانند ماه جاری را برگرداندند ولی ماه را با عدد ماه نمایش می دهند. برای نمایش نام ماه می توانید از تابع DATENAME استفاده کنید:
SELECT DATENAME(month, SYSDATETIME()) AS Result;
+----------+
| Result |
|----------|
| June |
+----------+
بدست آوردن روز از سال در SQL Server
لیست کردن ماه های میلادی در SQL Server
بدست آوردن عدد و نام روز هفته در SQL Server
بدست آوردن نام ماه در SQL Server
همچنین می توانید از دیگر توابع T-SQL برای فرمت کردن تاریخ در صورت لزوم استفاده کنید. در اینجا مثالی از استفاده ی تابع FORMAT برای فرمت کردن Result وجود دارد:
SELECT
FORMAT(SYSDATETIME(), 'd', 'en-US') AS 'd, en-US',
FORMAT(SYSDATETIME(), 'd', 'en-gb') AS 'd, en-gb',
FORMAT(SYSDATETIME(), 'D', 'en-US') AS 'D, en-US',
FORMAT(SYSDATETIME(), 'D', 'en-gb') AS 'D, en-gb';
+------------+------------+-----------------------+--------------+
| d, en-US | d, en-gb | D, en-US | D, en-gb |
|------------+------------+-----------------------+--------------|
| 6/15/2018 | 15/06/2018 | Friday, June 15, 2018 | 15 June 2018 |
+------------+------------+-----------------------+--------------+
برای نمایش تفاوت بین تاریخ فعلی و تاریخی دیگر می توانید از توابعی مانند DATEDIFF استفاده کنید. در این مثال با استفاده از تابع DATEADD، یک ماه به تاریخ فعلی اضافه می کنیم و سپس تفاوت تاریخ فعلی با آن تاریخ را بر حسب روز مشاهده می کنیم:
DECLARE @date1 datetime2 = SYSDATETIME();
DECLARE @date2 datetime2 = DATEADD(month, 1, SYSDATETIME());
SELECT DATEDIFF(day, @date1, @date2) AS Result;
+----------+
| Result |
|----------|
| 30 |
+----------+
نمایش دیدگاه ها (0 دیدگاه)
دیدگاه خود را ثبت کنید: