SQLite
 sql >> база данни >  >> RDS >> SQLite

Как да форматирате дата и час в SQLite

Проблем:

Искате да форматирате колона за дата и час или стойност в SQLite.

Пример:

Нашата база данни има таблица с име ticket с данни в колоните passenger_ID , train_number и sale_datetime .

passenger_ID номер_влак sale_datetime
245NX 4505 17.10.2019 г. 12:56:30 ч.
127RG 3403 17.10.2019 11:45:23
567FH 4505 2019-10-18 12:40:32
230AP 6700 18.10.2019 13:20:20
118BB 3403 18.10.2019 13:13:13

За всяка продажба на билети нека вземем идентификационния номер на пътника, номера на влака и датата и часа на продажба. Искаме да форматираме датата на продажба, така че да показва деня, месеца и годината, разделени с наклонени черти (/), със запетая между годината и часа. Искаме само час и минута на разпродажбата.

Ето заявката, която бихте написали:

Решение:

SELECT passenger_ID,
  train_number,
  STRFTIME('%d/%m/%Y, %H:%M', sale_datetime)
  AS sale_formatted_datetime 
FROM ticket;

Ето резултата от заявката:

passenger_ID номер_влак sale_formatted_datetime
245NX 4505 17.10.2019 г., 12:56 ч.
127RG 3403 17.10.2019 г., 11:45 ч.
567FH 4505 18.10.2019 г., 12:40 ч.
230AP 6700 18.10.2019 г., 13:20 ч.
118BB 3403 18.10.2019 г., 13:13 ч.

Дискусия:

Използвайте STRFTIME() функция за форматиране на данни за дата\час\datetime в SQLite. Тази функция приема два аргумента. Първият аргумент е форматен низ, съдържащ модела на част от дата/час. В нашия пример използваме низа за формат „%d/%m/%Y, %H:%M '. В този низ:

  • %d е двуцифрен ден.
  • %m е двуцифрен месец.
  • %Y е четирицифрена година.
  • %H е двуцифрен час.
  • %M е двуцифрена минута.

Можете да намерите още спецификатори за дата и час в документацията на SQLite.

Вторият аргумент е стойността на час/дата/дата и час за форматиране. Това може да бъде израз, връщащ стойност на час/дата/дата и час или името на колона час/дата/дата и час. (В нашия пример това е колоната sale_datetime .)

STRFTIME() връща форматираната дата и час. В нашия пример форматираната дата и час не съдържат секунди и частите от датата са разделени с наклонени черти (/) вместо тирета (-).


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Сравнете датите, съхранени като низ, като използвате Datetime

  2. Къде Android съхранява версията на базата данни на SQLite?

  3. Експортиране на база данни на SQLite в CSV файл

  4. Разрешаване на потребителите да имат достъп само до определени таблици в моя доставчик на съдържание

  5. SQLite - Промяна на таблица