В этом учебном пособии вы узнаете, как использовать SQLite функцию time с синтаксисом и примерами.
Описание
SQLite функция time - это очень мощная функция, которая может вычислять время и возвращать его в формате 'HH-MM-SS'.
Синтаксис
Синтаксис функции time в SQLite:
Параметры или аргументы
timestring
Значение времени. Это может быть одно из следующих:
timestring | Пояснение |
---|---|
now | now литерал, используемый для возврата текущей даты. |
YYYY-MM-DD | Значение даты в формате 'YYYY-MM-DD' |
YYYY-MM-DD HH:MM | Значение даты в формате 'YYYY-MM-DD HH:MM' |
YYYY-MM-DD HH:MM:SS | Значение даты в формате 'YYYY-MM-DD HH:MM:SS' |
YYYY-MM-DD HH:MM:SS.SSS | Значение даты в формате 'YYYY-MM-DD HH:MM:SS.SSS' |
HH:MM | Значение даты в формате 'HH:MM' |
HH:MM:SS | Значение даты в формате 'HH:MM:SS' |
HH:MM:SS.SSS | Значение даты в формате 'HH:MM:SS.SSS' |
YYYY-MM-DDTHH:MM | Значение даты в формате YYYY-MM-DDTHH:MM, где Т - буквенный символ, разделяющий части даты и времени |
YYYY-MM-DDTHH:MM:SS | Значение даты в формате 'YYYY-MM-DDTHH:MM:SS', где Т - буквенный символ, разделяющий части даты и времени |
YYYY-MM-DDTHH:MM:SS.SSS | Значение даты в формате 'YYYY-MM-DDTHH:MM:SS.SSS', где Т - это буквенный символ, разделяющий части даты и времени |
DDDDDDDDDD | Юлианский номер даты |
modifier1, modifier2, ... modifier_n
Необязательный. Это модификаторы, которые применяются к timestring. Каждый модификатор применяется по порядку и является накопительным. Они могут быть одним или несколькими из следующих:
modifier | Пояснение |
---|---|
[+-]NNN years | Количество лет, добавленных/вычтенных к дате |
[+-]NNN months | Количество месяцев, добавленных/вычтенных к дате |
[+-]NNN days | Количество дней, добавленных/вычтенных к дате |
[+-]NNN hours | Количество часов, добавленных/вычтенных к дате |
[+-]NNN minutes | Количество минут, добавленных/вычтенных к дате |
[+-]NNN seconds | Количество секунд, добавленных/вычтенных к дате |
[+-]NNN.NNNN seconds | Количество секунд (и дробных секунд), добавленных/вычтенных к дате |
start of year | Перенос даты обратно на начало года |
start of month | Перенос даты обратно на начало месяца |
start of day | Перенос даты обратно на начало дня |
weekday N | Перемещает дату вперед на следующую дату, где номер дня недели равен N (0 = воскресенье, 1 = понедельник, 2 = вторник, 3 = среда, 4 = четверг, 5 = пятница, 6 = суббота) |
unixepoch | Используется с временной шкалой DDDDDDDDDD для интерпретации даты как времени UNIX (то есть: количество секунд с 1970-01-01) |
localtime | Регулирует дату по местному времени, при условии, что временная строка была выражена в UTC |
utc | Приспосабливает дату к utc, предполагая, что временная строка была выражена в местном времени |
Примечание
- Функция time возвращает результат, отображаемый в формате 'HH-MM-SS'.
Применение
Функция time может использоваться в следующих версиях SQLite:
- SQLite 3.8.6, SQLite 3.8.x, SQLite 3.7.x, SQLite 3.6.x
Пример
Рассмотрим некоторые примеры SQLite функций time и узнаем, как использовать функцию времени в SQLite.
Пример текущего времени
Вы можете получить текущее время в SQLite, используя timestring 'now' с функцией времени следующим образом:
1 2 |
sqlite> SELECT time('now'); Результат: '11:28:02' (в формате HH-MM-SS) |
Пример значения времени
Вы можете получить значение времени, используя функцию времени следующим образом:
1 2 3 4 5 6 7 8 |
sqlite> SELECT time('2019-01-25 11:23:02'); Результат: '11:23:02' sqlite> SELECT time('11:23:02.582'); Результат: '11:23:02' sqlite> SELECT time('2019-01-25'); Результат: '00:00:00' |
В этих примерах мы вернули временную часть даты и/или значение времени. Используя функцию time, вы можете передать дату, время или значение даты/времени. В любом случае, функция time удалит часть даты и вернет часть времени, отформатированную как 'HH-MM-SS'.
Пример сложения/вычитания часов
Вы можете использовать функцию time, чтобы управлять значением времени и добавлять или вычитать часы к нему. Это делается с помощью модификатора 'NNN hours' с функцией time следующим образом:
1 2 3 4 5 6 7 8 |
sqlite> SELECT time('11:23:02','+2 hours'); Результат: '13:23:02' sqlite> SELECT time('11:23:02','-2 hours'); Результат: '09:23:02' sqlite> SELECT time('now','+5 hours'); Результат: '15:50:08' (при условии, что текущее время '10:50:08') |
В этих примерах мы использовали модификатор 'NNN hours', чтобы добавить 2 часа в первом примере, вычесть 2 часа во втором примере и добавить 5 часов к текущему времени в третьем примере.
Пример сложения/вычитания минут
Вы можете использовать функцию time, чтобы управлять значением времени и добавлять или вычитать минуты к нему. Это делается с помощью модификатора 'NNN minutes' с функцией time следующим образом:
1 2 3 4 5 6 7 8 |
sqlite> SELECT time('11:15:02','+15 minutes'); Результат: '11:30:02' sqlite> SELECT time('11:15:02','-15 minutes'); Результат: '11:00:02' sqlite> SELECT time('now','+30 minutes'); Результат: '11:20:08' (при условии, что текущее время '10:50:08') |
В этих примерах мы использовали модификатор 'NNN minutes', чтобы добавить 15 минут в первом примере, вычесть 15 минут во втором примере и добавить 30 минут к текущему времени в третьем примере.