Kuupäevafunktsioonid

Allikas: Teadmusbaas
Redaktsioon seisuga 13. mai 2019, kell 10:26 kasutajalt Vainol (arutelu | kaastöö)

MariaDb kuupäeva ja kellaaja funtsioonid on ADDDATE, ADDTIME, CURDATE, DATEDIFF, DAYNAME, EXTRACT, LAST_DAY, NOW, SYSDATE jpt, täielik loetelu vt allikas 1

  • Kuupäevasid saab liita ja lahutada funktsioonidega ADDDATE, DATE_ADD, SUBDATE ning kellaaegasid liita ja lahutada funktsioonidega ADDTIME ja SUBTIME, jooksvat kuupäeva saab kuvada funktsioonidega CURDATE, NOW ja SYSDATE, jooksvat kellaaega saab vaadata CURTIME funktsiooniga;
  • ADDDATE funktsioonil on 2 kuju: ADDDATE(kuupäev,INTERVAL väärtus ja ühik vt tabel 1) või ADDDATE(kuupäeva_avaldis,päevade arv), näiteks SELECT ADDDATE('2018-01-02', INTERVAL 31 DAY);
  • Jooksvat kuupäeva saab funktsioonidega NOW() ja SYSDATE: SYSDATE([täpsus]), näiteks SELECT SYSDATE(4) annab kellaaja sekundid 4 komakohaga;
  • Kahe kuupäeva vahelist päevade arvu arvutab DATEDIFF, millel on 2 argumenti hilisem kuupäev ja varasem kuupäev, näiteks SELECT DATEDIFF(NOW(),"2007-04-21");;
  • EXTRACT funktsioon võimaldab kuupäevast tuletada vajaliku kuupäeva osa (päeva, kuu, aasta), näiteks SELECT EXTRACT(YEAR FROM '2019-07-02'); tuletab aastaarvu;
  • LAST_DAY(kuupäev) väljastab kuupäeva järgi kuu viimase päeva;
  • MONTHNAME(kuupäev)väljastab kuupäevaga määratud kuu nime;
  • DATE_FORMAT(date, format[, locale]) ja TIME_FORMAT vormindavad kuupäeva või kellaaega etteantud parameetrite järgi, vt tabel 2.
Tabel 1. funktsioonides ADDDATE, SUBDATE, DATE_ADD, DATE_SUB, TIMESTAMPADD, TIMESTAMPDIFF, EXTRACT kasutatavad ühikud
ÜhikKirjeldus
MICROSECONDmikrosekundid
SECOND sekundid
MINUTE minutid
HOUR tunnid
DAY päevad
WEEK nädalad
MONTH kuud
QUARTER kvartalid
YEAR aastad
SECOND_MICROSECOND sekundid.mikrosekundid
MINUTE_MICROSECOND minutid.sekundid.mikrosekundid
MINUTE_SECOND minutid.sekundid
HOUR_MICROSECOND tunnid.minutid.sekundid.mikrosekundid
HOUR_SECOND tunnid.minutid.sekundid
HOUR_MINUTE tunnid.minutid
DAY_MICROSECOND päevad tunnid.minutid.sekundid.mikrosekundid
DAY_SECOND päevad tunnid.minutid.sekundid
DAY_MINUTE päevad tunnid.minutid
DAY_HOUR päevad tunnid
YEAR_MONTH aastad-kuud
Tabel 2. Funktsioonides DATE_FORMAT, STR_TO_DATE, FROM_UNIXTIME (kellaajavõtmed TIME_FORMAT) kasutatavad võtmed
VõtiKirjeldus
%aShort weekday name in current locale (Variable lc_time_names)
%bShort form month name in current locale. For locale en_US this is one of: Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov or Dec.
%c Month with 1 or 2 digits.
%D Day with English suffix 'th', 'nd', 'st' or 'rd. (1st, 2nd, 3rd...).
%d Day with 2 digits.
%e Day with 1 or 2 digits.
%f Sub seconds 6 digits.
%H Hour with 2 digits between 00-23.
%h Hour with 2 digits between 01-12.
%I Hour with 2 digits between 01-12.
%i Minute with 2 digits.
%j Day of the year (001-366)
%k Hour with 1 digits between 0-23.
%l Hour with 1 digits between 1-12.
%M Full month name in current locale (Variable lc_time_names).
%m Month with 2 digits.
%p AM/PM according to current locale (Variable lc_time_names).
%r Time in 12 hour format, followed by AM/PM. Short for '%I:%i:%S %p'.
%S Seconds with 2 digits.
%s Seconds with 2 digits.
%T Time in 24 hour format. Short for '%H:%i:%S'.
%U Week number (00-53), when first day of the week is Sunday.
%u Week number (00-53), when first day of the week is Monday.
%V Week number (01-53), when first day of the week is Sunday. Used with %X.
%v Week number (01-53), when first day of the week is Monday. Used with %x.
%W Full weekday name in current locale (Variable lc_time_names).
%w Day of the week. 0 = Sunday, 6 = Saturday.
%X Year with 4 digits when first day of the week is Sunday. Used with %V.
%x Year with 4 digits when first day of the week is Monday. Used with %v.
%Y Year with 4 digits.
%y Year with 2 digits.
%# For str_to_date(), skip all numbers.
%. For str_to_date(), skip all punctation characters.
%@ For str_to_date(), skip all alpha characters.
%% A literal % character.
Allikad:
  1. MariaDB kuupäeva ja kellaaja funktsioonid

Tagasi SQL lausendite juurde