По-долу е даден списък с валидни формати на низове за време, които можете да използвате във всяка функция за дата и час в SQLite.
Времен низ | Пример |
---|---|
ГГГГ-ММ-ДД | 30.12.2020 |
ГГГГ-ММ-ДД ЧЧ:ММ | 30.12.2020 10:45 |
ГГГГ-ММ-ДД ЧЧ:ММ:СС | 30.12.2020 10:45:07 |
ГГГГ-ММ-ДД ЧЧ:ММ:СС.SSS | 2020-12-30 10:45:07.123 |
ГГГГ-ММ-ДД Т ЧЧ:ММ | 2020-12-30T10:45 |
ГГГГ-ММ-ДД Т ЧЧ:ММ:СС | 2020-12-30T10:45:07 |
ГГГГ-ММ-ДД Т ЧЧ:ММ:СС.ССС | 2020-12-30T10:45:07.123 |
ЧЧ:ММ | 10:45 |
ЧЧ:ММ:СС | 10:45:07 |
HH:MM:SS.SSS | 10:45:07.123 |
сега | 30.12.2020 10:45:07 |
DDDDDDDDDD | 2459213.94799769 |
now
time string връща текущата дата и час с помощта на универсално координирано време (UTC).
DDDDDDDDDD
времевият низ е числото на юлианския ден, изразено като стойност с плаваща запетая.
Как работят низовете за време?
Когато използвате някоя от функциите за дата и час на SQLite, трябва да предоставите времеви низ. Този низ от време представлява датата/часа, на който се опитвате да форматирате или да извършите операцията.
Времевият низ, който предоставяте, трябва да се придържа към един от валидните формати в таблицата по-горе.
Примерен код
Ето основен пример за демонстриране на няколко от низовете за време в горната таблица.
.mode line
SELECT
datetime('2020-12-30'),
datetime('now'),
datetime('2459213.94799769');
Резултат:
datetime('2020-12-30') = 2020-12-30 00:00:00 datetime('now') = 2020-04-24 22:58:31 datetime('2459213.94799769') = 2020-12-30 10:45:07
Индикатор за часовата зона
Всички времеви низове, които включват времето (като ЧЧ:ММ, ЧЧ:ММ:СС и т.н.), могат също да включват индикатор за часовата зона. Това означава всички времеви низове от ред 2 до ред 10 в горната таблица.
Индикаторът за часовата зона може да приеме формата [+-]HH:MM
или просто Z
.
Z
суфиксът не променя нищо, тъй като функциите за дата и час на SQLite така или иначе вече използват вътрешно време UTC/zulu.
Всеки различен от нула HH:MM
суфиксът се изважда от посочените дата и час, за да се изчисли времето на зулу.
Пример за индикатори за часовата зона
Ето няколко примера за демонстрация.
SELECT
datetime('10:45Z'),
datetime('10:45+01:00'),
datetime('10:45-01:00');
Резултат:
datetime('10:45Z') = 2000-01-01 10:45:00 datetime('10:45+01:00') = 2000-01-01 09:45:00 datetime('10:45-01:00') = 2000-01-01 11:45:00