Kartais kalbama apie datą ir laiką SQL gali būti gana keblu. Nors data ir laikas iš tikrųjų yra visiškai skirtingi duomenų tipai, jie dažnai sujungiami į datos ir laiko datos duomenų tipą. SQL datos ir laikai vien yra gana paprasti, tačiau šių dviejų sujungimas gali būti viena iš skaudžiausių užduočių. Šiame straipsnyje išsamiai sužinosite apie SQL datos laiko tipą.
- Koks yra „DateTime“ duomenų tipas?
- datos laikas Aprašymas
- Kitų datos ir laiko tipų konvertavimas į duomenų laiko duomenų tipą
Koks yra duomenų laiko tipas?
SQL, datos laikas datos duomenų tipas naudojamas vertėms, kuriose yra ir data, ir laikas. „Microsoft“ apibrėžia kaip a data kartu su dienos laiku su trupmeninėmis sekundėmis, paremta 24 valandų laikrodžiu .
Konkrečiai SQL turi daug duomenų tipų, kurie sujungia datos ir laiko atvaizdavimą, todėl viskas yra sudėtingesnė. Plačiausiai naudojamas DATETIME, nes jis buvo nuo ankstesnių SQL versijų. SQL nuskaito ir rodo DATETIME reikšmes „MMMM-MM-DD hh: mm: ss“ formatu. Palaikomas diapazonas yra nuo „1753-01-01 00:00:00“ iki „9999-12-31 23: 59: 59.997“. Panagrinėkime laiko ir laiko tipą išsamiau.
datos laikas Aprašymas
Norėdami sužinoti daugiau apie SQL datos laiką, patikrinkite šią lentelę.
Nuosavybė | Vertė |
Sintaksė | datos laikas |
Naudojimas | PAREIŠKKITE @MyDatetimedatos laikas Sukurti lentelę1 lentelė (1 stulpelisdatos laikas) |
Formatas | ‘YYYY-MM-DD hh: mm: ss.nnn |
Laiko diapazonas | 00:00:00 iki 23:59: 59,997 |
Elementų diapazonai |
|
Saugyklos dydis kaip deklaruoti dinaminį masyvą Java | 8 baitai |
Numatytoji reikšmė | 1900-01-01 00:00:00 |
Kalendorius | Grigaliaus (apima visą metų diapazoną.) |
Pastaba: Aukščiau pateikta informacija taikoma datos laiko tipui „Transact-SQL“ irSQL serveris.
Taigi, štai datos laikas SQL. Bet ką darytumėte, jei turite kitą datą irlaiko tipus ir turite juos konvertuoti į datos laikas tipo?
Kitų datos ir laiko tipų konvertavimas į duomenų laiko duomenų tipą
The datos laikas duomenų tipas SQL įtraukiama data ir laikas su 3 skaitmenų trupmeninių sekundžių dalimi. Jo tikslumas suapvalinamas iki .000, .003 arba .007 sekundžių. Taigi, kai konvertuosite a data arba laikas vertės į datos laikas , prie vertės pridedama papildoma informacija. Taip yra todėl, kad datos laikas duomenų tipe yra data ir laikas. Šioje straipsnio dalyje paaiškinta, kas vyksta, kai kita data ir laikas duomenų tipai konvertuojami į datos laikas duomenų tipas.
1 pavyzdys: numanoma konversija tarp datos ir datos laiko
DECLARE @date date = '2020-12-01' DECLARE @datetime datetime = @date
Rezultatas
@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
2 pavyzdys: numanomas datos ir datos laiko konvertavimas naudojant CAST ()
DECLARE @thedate date = '2020-12-01' SELECT @thedate AS 'date', CAST (@thedate AS datetime) AS 'datetime'
Rezultatas
@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
3 pavyzdys: numanomas konversija iš smalldatetime į datetime
Kai konversija yra iš s Malldatetime tipas, valandos ir minutės nukopijuojamos. Sekundės ir trupmeninės sekundės nustatomos į reikšmę 0. Šis kodas rodo a konvertavimo rezultatus smalldatetime vertė a datos laikas vertė.
DECLARE @smalldatetime smalldatetime = '2020-12-01 12:32' DECLARE @datetime datetime = @smalldatetime SELECT @datetime AS '@datetime', @smalldatetime AS '@smalldatetime'
Rezultatas
@datetime @smalldatetime ------------------------- --------------------- - 2016-12-01 12: 32: 00.000 2016-12-01 12:32:00
Panašiai galite konvertuoti kitus data ir laikas tipai į duomenų laikas įveskite netiesiogiai arba naudodami vaidinti () ir Paversti() metodai. Norėdami sužinoti, peržiūrėkite toliau pateiktą lentelę, kad susipažintumėte su visų datų ir laiko tipų formatais.
Duomenų tipas | Pavyzdys |
laikas | 12:35:29. 1234567 |
data | 2007-05-08 |
smalldatetime | 2007-05-08 12:35:00 |
datos laikas | 2007-05-08 12: 35: 29.123 |
datos laikas2 | 2007-05-08 12:35:29. 1234567 |
datetimeoffset | 2007-05-08 12: 35: 29.1234567 +12: 15 |
Tuo mes priėjome šio straipsnio pabaigą. Tikiuosi, kad jums aiškus čia aptartas turinys. Įsitikinkite, kad praktikuojate kuo daugiau ir grąžinkite savo patirtį.
Jei norite sužinoti daugiau apie „MySQL“ ir susipažinkite su šia atviro kodo reliacine duomenų baze, tada patikrinkite mūsų kuris ateina su instruktorių vedamomis tiesioginėmis treniruotėmis ir realių projektų patirtimi. Šie mokymai padės jums išsamiau suprasti „MySQL“ ir padės jums įsisavinti šį dalyką.
Turite mums klausimą? Prašome tai paminėti šio straipsnio „Procedūros SQL straipsnyje“ skiltyje ir mes su jumis susisieksime.