Mõnikord käsitletakse kuupäeva ja kellaaega SQL võib olla üsna keeruline. Kuigi kuupäev ja kellaaeg on tegelikult täiesti erinevad andmetüübid, liidetakse need sageli kuupäeva ja kuupäeva andmetüübiks. SQL kuupäevad ja kellaajad üksi on üsna lihtsad, kuid nende kahe ühendamine võib olla üks valusamaid ülesandeid. Selles artiklis tutvutakse üksikasjalikult SQL-i kuupäeva tüübiga.
- Mis on DateTime andmetüüp?
- kuupäeva aeg Kirjeldus
- Muude kuupäeva- ja kellaaegatüüpide teisendamine kuupäevaaja andmetüübiks
Mis on kuupäeva aja andmetüüp?
SQL-is kuupäev Kellaaeg kuupäeva andmetüüpi kasutatakse väärtuste jaoks, mis sisaldavad nii kuupäeva kui ka kellaaega. Microsoft määratleb selle kui kuupäev kombineerituna kellaaja ja murdosa sekunditega, mis põhineb 24-tunnisel kellal .
Täpsemalt SQL-il on palju andmetüüpe, mis ühendavad nii kuupäeva kui ka kellaaja esitused, muutes asja keerukamaks. Kõige laialdasemalt kasutatav on DATETIME, kuna see on olnud olemas juba varasematest SQL-i versioonidest. SQL otsib ja kuvab DATETIME väärtused vormingus „AAAA-KK-PP hh: mm: ss”. Toetatav vahemik on ‘1753-01-01 00:00:00’ kuni ’9999-12-31 23: 59: 59.997’. Uurime kuupäevaaja tüüpi üksikasjalikumalt.
kuupäeva aeg Kirjeldus
SQL-i kuupäeva tüübi kohta lisateabe saamiseks kontrollige järgmist tabelit.
Kinnisvara | Väärtus |
Süntaks | kuupäev Kellaaeg |
Kasutamine | DEKLARI @MyDatetimekuupäev Kellaaeg LOE TABEL Tabel 1 (veerg 1kuupäev Kellaaeg) |
Vormindus | ‘AAAA-KK-PP hh: mm: ss.nnn |
Ajavahemik | 00:00:00 kuni 23: 59: 59,997 |
Elementide vahemikud |
|
Salvestusruumi suurus HTML-silt reavahetuse sisestamiseks | 8 baiti |
Vaikeväärtus | 1900-01-01 00:00:00 |
Kalender | Gregooriuse keel (sisaldab kõiki aastaid.) |
Märge: Ülaltoodud üksikasjad kehtivad kuupäeva-aja tüübi jaoks Transact-SQL jaSQL Server.
Nii see on kuupäev Kellaaeg SQL-is. Aga mida teeksite, kui teil oleks mõni muu kuupäev jaaja tüübid ja peate need teisendama kuupäev Kellaaeg tüüp?
Muude kuupäeva- ja kellaaegatüüpide teisendamine kuupäevaaja andmetüübiks
The kuupäev Kellaaeg andmetüüp sisse SQL sisaldab kuupäeva ja kellaaega koos kolmekohalise murdosa sekunditega. Selle täpsus on ümardatud .000, .003 või .007 sekundi kaupa. Niisiis, kui teisendate a kuupäev või aeg väärtused kuupäev Kellaaeg , lisatakse väärtusele lisateavet. Seda seetõttu, et kuupäev Kellaaeg andmetüüp sisaldab nii kuupäeva kui ka kellaaega. Artikli selles osas selgitatakse, mis juhtub, kui muud päev ja aeg andmetüübid teisendatakse kuupäev Kellaaeg andmetüüp.
Näide1: kaudne teisendamine kuupäeva ja kuupäeva vahel
DECLARE @date date = '2020-12-01' DECLARE @datetime datetime = @date
Tulemus
@kuupäev @kuupäev ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
Näide2: kaudne teisendamine kuupäeva ja kuupäeva vahel CAST () abil
DECLARE @thedate date = '2020-12-01' SELECT @thedate AS 'date', CAST (@thedate AS datetime) AS 'datetime'
Tulemus
@kuupäev @kuupäev ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
Näide3: kaudne teisendamine väärtusest smalldatetime kuupäevaajaks
Kui teisendus pärineb s-st malldatetime tüüp, tunnid ja minutid kopeeritakse. Sekundid ja murdosa sekundid on seatud väärtusele 0. Järgmine kood näitab a teisendamise tulemusi smalldatetime väärtus väärtusele a kuupäev Kellaaeg väärtus.
DECLARE @smalldatetime smalldatetime = '2020-12-01 12:32' DECLARE @datetime datetime = @smalldatetime SELECT @datetime AS '@datetime', @smalldatetime AS '@smalldatetime'
Tulemus
@datetime @smalldatetime ------------------------- --------------------- - 2016-12-01 12: 32: 00.000 2016-12-01 12:32:00
Samamoodi saate teisendada ka teisi kuupäev Kellaaeg tüübid kuupäev tüüp kas kaudselt või kasutades valatud () ja teisendama () meetodid. Tutvuge alltoodud tabeliga, et tutvuda kõigi kuupäeva ja kellaaja tüüpidega.
Andmetüüp | Näide |
aeg | 12:35:29. 1234567 |
kuupäev | 2007-05-08 |
smalldatetime | 2007-05-08 12:35:00 |
kuupäev Kellaaeg | 2007-05-08 12: 35: 29.123 |
kuupäevaaeg2 | 2007-05-08 12:35:29. 1234567 |
kuupäeva nihe | 2007-05-08 12: 35: 29.1234567 +12: 15 |
Sellega oleme jõudnud selle artikli lõppu. Loodan, et teil on siin käsitletud sisu selge. Harjutage kindlasti nii palju kui võimalik ja pöörake oma kogemused tagasi.
Kui soovite rohkem teada saada MySQL ja tutvuge selle avatud lähtekoodiga relatsioonide andmebaasiga ning vaadake siis meie mis on varustatud juhendajate juhitud elava koolituse ja reaalse elu projektikogemusega. See koolitus aitab teil MySQL-i põhjalikult mõista ja aitab teil selle teema üle meisterlikkust saavutada.
Kas teil on meile küsimus? Palun mainige seda selle artikli SQL-i protseduuride kommentaaride jaotises ja võtame teiega ühendust.