SQLShack (Suomi)

Tässä artikkelissa tarkastellaan DATEADD SQL -funktiota ja sen käyttöä skenaarioita, joissa on useita esimerkkejä.

Työskentelemme yleensä päivämäärätietotyypin kanssa SQL Serverissä. Meidän on tehtävä manipulointeja myös päivämäärien kanssa. Edellisessä artikkelissani DATEPART SQL FUNCTION tutkimme tietyn osan noutamista päivämäärästä, kuten päivä, vuosi, kuukausi, vuosineljännes, vuoden päivä.

Voimme käyttää SQL SERVER DATEADD -toimintoa lisäämään tai vähentämään tiettyä jaksoa a-päivämäärästä.

Syntaksi

DATEADD (datepart, number, date)

  • Datepart: Se määrittää päivämäärän osan, johon haluamme lisätä tai vähentää tietyn aikavälin. Sillä voi olla esimerkiksi vuosi, kuukausi, päivä ja viikko. Tutkimme lisää tässä esimerkkiosassa
  • Numero: Se on numero, jolla haluamme lisätä tai vähentää päivämäärää. Sen on oltava kokonaisluku
  • Päivämäärä: Voimme määrittää päivämäärän täällä. Haluamme lisätä tähän päivämäärään tietyn osan datapartikkeliin

Oletetaan, että haluamme lisätä nykyiseen päivämäärään kymmenen päivää. Tässä esimerkissä muuttujat olisivat

  • Datepart value: Day
  • Number: 5
  • Date: Getdate () – Current date

Tutustu SQL SERVER DATEADD -funktioon esimerkkien avulla

SQL Server DATEADD -funktion tietotyypit

Päivämäärälausekkeessa voidaan käyttää seuraavaa tietotyyppiä.

  • päivämäärä
  • DateTime
  • datetimeoffset
  • datetime2
  • smalldatetime
  • aika

Seuraavassa kyselyssä ilmoitimme muuttujalle @date, jolla on datetime2-tietotyyppi. Voimme käyttää DATEADD SQL -funktiota seuraavan kyselyn mukaisesti.

SQL SERVER DATEADD -toiminnon käyttäminen tietueiden hakemiseen taulukko määritetyllä ajanjaksolla

Voimme käyttää DATEADD SQL -toimintoa hakeaksesi tietueita taulukosta tietylle ajanjaksolle. Seuraavassa kyselyssä määritimme päivämäärän parametrilla @Startdate. Haluamme hakea tietueet Tilaukset-taulukosta. Meidän on hankittava tietueet @StartDate ja @Enddate välillä (lisää 1 tunti aloituspäivämäärään).

Saamme seuraavan tuloksen.

SQL SERVER DATEADD -toiminnon käyttäminen päivämäärä- tai aikaeron saamiseksi

Voimme käyttää DATEADD SQL -toimintoa saada aikaero aloitus- ja lopetuspäivän välillä. Monta kertaa haluamme käyttää SQL SERVER DATEADD -toimintoa päivämääräeron saamiseksi. Haluamme esimerkiksi tietää, kuinka kauan tilauksen tekeminen kesti tai kuinka kauan kului kotoa toimistoon.

Suorita seuraava kysely saadaksesi eron aloitus- ja loppuaikojen välillä. Käytämme DATEADD SQL -funktiota yhdessä DATEDIFF SQL -funktion kanssa.

Se antaa kuluneen ajan minuutteina. Määritimme arvon 0 DateADD SQL -funktiossa. Se vie päivämäärän arvon 1900-01-01 00: 00: 00.000

Voimme käyttää SQL Convert -päivämäärämuotoa edustamaan tätä muodossa HH: MM: SS.

Se antaa aikaeron HH: MM: SS-muodossa seuraavan kuvan mukaisesti.

Määritä SQL SERVER DATEADD -funktion tulos uudeksi sarakkeeksi

Voimme käyttää SQL SERVER DATEADD -toimintoa saadaksesi uuden sarakkeen vaaditun päivämääräarvon lisäämisen jälkeen. Seuraavassa kyselyssä haluamme lisätä kaksi päivää aloituspäivämäärään ja edustaa tätä uutena sarakkeena.

Skaala alakyselyt ja skalaaritoiminnot DATEADD SQL -funktiossa

Voimme käyttää SQL SERVER DATEADD -funktiota myös skalaaristen alakyselyjen ja skalaarifunktioiden kanssa. Seuraavassa kyselyssä haluamme lisätä päivien lukumäärän LastEditedWhen-päivämäärän enimmäisarvoon Sales.orders-taulukossa.

Ensimmäinen alakysely antaa numeron 16496 ja toinen alakysely antaa päivämäärän. Käytimme SQL SERVER DATEADD -funktiota päivien määrän lisäämiseen, ja saamme seuraavan tuloksen.

Numeeriset lausekkeet SQL SERVER DATEADD -funktio

Voimme käyttää numeerisia lausekkeita myös SQL SERVER DATEADD -funktiossa. Seuraavassa kyselyssä käytämme numeerista lauseketta laskemaan numero ja antamaan meille tulos.

1
2
3

SELECT GETDATE () AS CurrentDate,
DATEADD (kuukausi, – (12/6), GETDATE ()) AS ModifiedDate;

DATEADD: n käyttö Rank-funktiolla

Voimme käyttää DATEADD SQL -funktiota myös rank funktiossa. Voimme käyttää sitä numero-argumentissa. Seuraavassa kyselyssä näet Row_Number () -funktion, joka käyttää numero-parametria ja arvoja päivämäärän parametrina.

Johtopäätös

Tässä artikkelissa tutkimme DATEADD SQL -toiminnon eri käyttötapoja ja esimerkkejä. Sen avulla voimme lisätä tai vähentää päivämääräosien arvoja määritetystä päivämäärästä. Toivottavasti pidät tästä artikkelista. Anna palautetta alla olevissa kommenteissa.

  • Kirjoittaja
  • Viimeisimmät viestit
MCSA-sertifioituna ja Microsoftin sertifioimana kouluttajana Gurgaonissa Intiassa, 13 vuoden kokemuksella, Rajendra työskentelee useissa suurissa yrityksissä, jotka keskittyvät suorituskyvyn optimointiin, seurantaan, korkeaan käytettävyyteen sekä hätäpalautumisstrategioihin ja toteutukseen. Hän on kirjoittanut satoja arvovaltaisia artikkeleita SQL Server, Azure, MySQL, Linux, Power BI, Performance tuning, AWS / Amazon RDS, Git ja niihin liittyvistä tekniikoista, joita tähän mennessä on lukenut yli 10 miljoonaa lukijaa.
Hän on luonut yhden suurimmista ilmaisista online-artikkelikokoelmista yhdestä aiheesta, 50-osaisella sarjallaan SQL Server Always On Availability Groups -ryhmissä. Hänen osuutensa perusteella SQL Server -yhteisöön hänet on tunnustettu useilla palkinnoilla, kuten arvostettu ”Vuoden paras kirjailija” jatkuvasti vuosina 2020 ja 2021 SQLShackissa.
Raj on aina kiinnostunut uusista haasteista, joten jos tarvitset konsultointia apua mistä tahansa hänen kirjoituksissaan käsitellystä aiheesta, hän on tavoitettavissa osoitteessa [email protected]
Näytä kaikki viestit, jotka on kirjoittanut Rajendra Gupta

Viimeisimmät viestit, jotka on kirjoittanut Rajendra Gupta (katso kaikki)
  • Pienien ja suurten versiopäivitysten tekeminen AWS: lle RDS SQL Server – 29. tammikuuta 2021
  • AWS RDS PostgreSQL -esiintymien käyttöönotto – 27. tammikuuta 2021
  • Paikallisten SQL-tietokantojen siirtäminen AWS RDS SQL Serveriin AWS DMS: n avulla – 25. tammikuuta , 2021

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *