Funktionen DATENAME() returnerar en sträng av typen navarchar som representerar en specificerad del av datumet, det kan vara dag, månad, år eller tid för ett visst datum.

DATENAME() liknar DATEPART() med undantag för returtypen.

Funktionen DATENAME() returnerar datumdelen som en teckensträng medan DATEPART() returnerar datumdelen som ett heltal.

SYNTAX

DATENAME (datepart, inputdate) 

datepart är den del av ett datum som ska extraheras.

inputdate är det datum från vilket datumdelen extraheras.

Låt oss titta på ett exempel på DATENAME-funktionen i SQL.

Följande uttalande använder DATENAME-funktionen för att extrahera datumdelarna från det givna datumet ”2018-03-27 18:23:45”.470′

DECLARE @date DATETIME = '2018-03-27 18:23:45.470';SELECT DATENAME(year, @date) as year,DATENAME(quarter, @date) as quarter,DATENAME(month, @date) as month,DATENAME(day, @date) as day,DATENAME(dayofyear ,@date) as dayofyear,DATENAME(Week ,@date) as week,DATENAME(hour, @date) as hour,DATENAME(minute, @date) as minute,DATENAME(second, @date) as second ,DATENAME(millisecond, @date) as millisecond ,DATENAME(microsecond, @date) as microsecond ,DATENAME(nanosecond, @date) as nanosecond

Som du kan se returnerar den alla delar av datumet, t.ex. kvartal, månad, dag, årsdag, vecka, timme, minut, sekund, milisekund, mikrosekund och nanosekund.

Så med hjälp av DATENAME-funktionen kan du hämta vilken del av datumet som helst.

Följande är de giltiga datepart-listorna som du kan använda för att hämta en del av datumet enligt dina krav.

day d, dd month m, mmyear yy, yyyyquarter qq, qhour hhminute mi, nsecond ss, smillisecond msmicrosecond mcsnanosecond nsweek wk, wwdayofyear dy, y

DATEPART VS DATENAME

Låt oss titta på ett exempel som visar skillnaden mellan DATEPART och DATENAME.

DATEPART returnerar en del av datumet som ett heltal, medan DATENAME returnerar en sträng av datatyp.

Så om du lägger till ett nummer till det resultat som returneras av DATEPART, lägger den till numret till resultatet och returnerar det modifierade resultatet, medan när du lägger till ett nummer till det resultat som returneras av DATENAME , sammanfogar den numret med resultatet i stället för att lägga till det .

Låt oss titta på ett exempel, i följande uttalande kan du se att vi för ett givet datum försöker lägga till värdet 2 i det resultat som returneras av DATEPART och DATENAME-funktionen för datumdelen av månad och år för ett givet datum.

Du kan se slutresultatet där DATEPART-funktionen lägger till 2 i resultatet medan DATENAME sammanfogar 2 med resultatet.

DECLARE @date DATETIME = '2018-03-27 18:23:45.470';SELECT DATENAME(month, @date) + '2' as month_from_DateName, DATEPART(month, @date) + '2' as month_from_DatePart SELECT DATENAME(year, @date) + '2' as year_from_DateName, DATEPART(year, @date) + '2' as year_from_DatePart,

Recommended for you

SQL Server DATEPART()

325 totala visningar, 3 visningar idag

admin

Lämna ett svar

Din e-postadress kommer inte publiceras.

lg