Hozzátéve idő értékek a mai napig
feladat
Azt szeretnénk, hogy adjunk időt a értéknapja vagy értéknapra-és időben.
döntés
Használja DATE_ADD () és DATE_SUB (), kifejezetten aritmetikai műveleteket és három óra. Azt is alkalmazni TO_DAYS () és FROM_DAYS () vagy UNIX_TIMESTAMP () és FROM_UNIXTIME ().
megbeszélés
Dátum számtani kissé bonyolultabb, mint az idők során, a változó hosszúságú hónapok és évek. Ezért MySQL speciális funkciókat DATE_ADD () és DATE_SUB (), hogy adjunk időközönként dátumot, és kivonjuk nih.1 függvény értékét veszi fel a dátumot és az intervallum d a következő formában:
DATE_ADD (d, intervallum érték egy)
DATE_SUB (d, intervallum érték egy)
ahol az egység - az egységnyi mérési időtartam és az érték - kifejezést meghatározza az ezen egységek száma. A leggyakoribb tartalmaz ilyen előírást egységek év, hónap, nap, óra, perc, másodperc (a teljes listát kap a MySQL kézikönyv). Megjegyezzük, hogy a mértékegység nincs megadva többes számban, és az egyes szám.
A DATE_ADD () és DATE_SUB (), hogy hajtsa végre a következő aritmetikai műveletek:
• Határozza meg a dátumot, amely három napon belül ma:
mysql> SELECT CURDATE (), DATE_ADD (CURDATE (), INTERVAL 3 nap);
• Ellenőrizze dátumokat lépve hete (a hetes időközzel, a lekérdezés értéket használja 7 nap, mivel nincs egység hét): mysql> SELECT CURDATE (), DATE_SUB (CURDATE (), intervallum 7 nap);
• Ha meg kell tanulni, és a dátumot és az időt, kezdje értéke DATETIME vagy időbélyeg.
A válasz a kérdésre: „Mennyi idő lesz 60 óra”, akkor futtassa a lekérdezést:
mysql> SELECT NOW (), DATE_ADD (MOST (), INTERVAL 60 óra);
• Egyes tervezők időközönként, és tartalmazza a dátumot és az időt. Az alábbi lekérdezés hozzáadja az aktuális dátum és idő tizennégy és fél óra:
mysql> SELECT NOW (), DATE_ADD (MOST (), INTERVAL '14: 30 „HOUR_MINUTE);
Hasonlóképpen, akkor adjuk hozzá a 3 nap és 4 óra:
mysql> SELECT NOW (), DATE_ADD (NOW (), 'periódus március 4' DAY_HOUR);
DATE_ADD () és DATE_SUB () felcserélhetők, egyikük - ugyanaz, mint a másik pedig az ellenkező előjelű intervallumot.
Például két ilyen hívás ekvivalens bármelyik értéke d dátuma:
DATE_ADD (d, intervallum -3 hó)
DATE_SUB (d, INTERVAL 3 hónapos)
Mivel MySQL 3.23.4, fel lehet használni hozzá és kivonva dátumokat időközönként szereplők + és -:
mysql> SELECT CURDATE (), CURDATE () + INTERVAL 1 év;
mysql> SELECT NOW (), ma () - Interval 24 órát;
Ahhoz, hogy hozzá a dátum intervallum értéket vagy a dátum-és idő is lehetséges, hogy egy konverziós függvény a bázisállomás és vissza. Például, hogy az időpontot előbbre vagy hátra egy hét (hét nap), használja TO_DAYS () függvényt és FROM_DAYS ():
TO_DAYS () függvény képes átalakítani a hozzáadott érték DATETIME és TIMESTAMP a napokban, ami kényelmes, azok számára, akik nem kell az időt:
Annak érdekében, hogy a pontosság értékek DATETIME és TIMESTAMP használatra UNIX_TIMESTAMP () függvényt és FROM_UNIXTIME () helyett a korábban venni.
Értékének módosításához DATETIME egy óra (3600 másodperc) oda-vissza:
Megvalósítása az utolsó vétel szükséges, hogy az eredeti és a kapott érték a megengedett tartományon belül a TIMESTAMP (1970 valahol 2037) értékeket.