Funktio DATENAME() palauttaa merkkijonon, navarchar-tyyppisen merkkijonon, joka edustaa määritettyä päivämäärän osaa päivämäärää, se voi olla tietyn päivämäärän päivä, kuukausi, vuosi tai kellonaika.

Funktio DATENAME() on samankaltainen kuin funktio DATEPART(), paitsi että se on palautuksen tyyppi.

Funktio DATENAME() palauttaa päivämäärän osan merkkijonona, kun taas DATEPART() palauttaa päivämäärän osan kokonaislukuna.

SYNTAX

DATENAME (datepart, inputdate) 

Datan osa on päivämäärän osa, joka poimitaan.

inputdate on päivämäärä, josta päivämäärän osa poimitaan.

Katsotaanpa esimerkki DATENAME-funktiosta SQL:ssä.

Seuraavassa lausekkeessa käytetään DATENAME-funktiota, joka poimii päivämäärän osat annetusta päivämäärästä ’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

Kuten näet, Se palauttaa kaikki päivämäärän osat, kuten Neljännesvuosi, Kuukausi, Päivä, Vuorokausi, Viikko, Tunti, Minuutti, Sekunti, Milisekunti, Mikrosekunti ja Nanosekunti.

Siten DATENAME-funktiota käyttämällä voit saada minkä tahansa päivämäärän osan.

Seuraavat ovat kelvollisia datepart-luetteloita, joita voit käyttää saadaksesi päivämäärän osan vaatimustesi mukaan.

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

Katsotaan esimerkki, jossa tarkastellaan DATEPARTin ja DATENAMEn eroa.

DATEPART palauttaa päivämäärän osan kokonaislukuna, kun taas DATENAME palauttaa datatyypin merkkijonon.

Jos siis DATEPARTin palauttamaan tulokseen lisätään jokin numero, se lisää numeron tulokseen ja palauttaa muutetun tuloksen, kun taas kun DATENAMEn palauttamaan tulokseen lisätään jokin numero, se ketjuttaa numeron tulokseen sen sijaan, että lisäisi sen .

Katsotaanpa esimerkkiä, seuraavassa lausekkeessa näet, että annetulle päivämäärälle yritämme lisätä arvon 2 DATEPART- ja DATENAME-funktion palauttamaan tulokseen päivämäärän kuukauden ja vuoden osalle annetulle päivämäärälle.

Voit nähdä lopullisen tuloksen, jossa DATEPART-funktio lisää tulokseen arvon 2, kun taas DATENAME-funktio ketjuttaa arvon 2 tulokseen.

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,

Suositellaan sinulle

SQL-palvelin DATEPART()

325 katselukertaa, 3 katselukertaa tänään

admin

Vastaa

Sähköpostiosoitettasi ei julkaista.

lg