SQLite Tanggal & Waktu
SQLite mendukung berikut lima tanggal dan waktu fungsi:
Tidak. | fungsi | contoh |
---|---|---|
1 | tanggal (timestring, modifier, pengubah, ...) | Mengembalikan format tanggal untuk YYYY-MM-DD. |
2 | waktu (timestring, modifier, pengubah, ...) | Dalam HH: MM: SS format waktu pulang. |
3 | datetime (timestring, modifier, pengubah, ...) | Dalam YYYY-MM-DD HH: MM: Format SS untuk kembali. |
4 | julianday (timestring, modifier, pengubah, ...) | Ini mengembalikan jumlah hari dari waktu 4714 SM Greenwich pada 24 November pada siang hari penghitungan. |
5 | strftime (format, timestring, pengubah, pengubah, ...) | Ini mengembalikan tanggal diformat sesuai dengan parameter pertama menentukan format string. Lihat di bawah menjelaskan format tertentu. |
Tanggal dan waktu lima fungsi waktu string sebagai parameter. Waktu string yang diikuti oleh nol atau lebih pengubah pengubah. strftime () fungsi juga dapat memformat format string sebagai argumen pertama. Di bawah ini Anda akan menemukan penjelasan rinci dari berbagai jenis string waktu dan pengubah.
string waktu
Waktu string dapat menjadi salah satu format berikut:
序号 | 时间字符串 | 实例 |
---|---|---|
1 | YYYY-MM-DD | 2010-12-30 |
2 | YYYY-MM-DD HH:MM | 2010-12-30 12:10 |
3 | YYYY-MM-DD HH:MM:SS.SSS | 2010-12-30 12:10:04.100 |
4 | MM-DD-YYYY HH:MM | 30-12-2010 12:10 |
5 | HH:MM | 12:10 |
6 | YYYY-MM-DDTHH:MM | 2010-12-30 12:10 |
7 | HH:MM:SS | 12:10:01 |
8 | YYYYMMDD HHMMSS | 20101230 121001 |
9 | now | 2013-05-07 |
Anda dapat menggunakan "T" yang memisahkan tanggal dan waktu sebagai karakter teks.
Pengubah (Modifier)
Waktu string dapat diikuti kembali nol atau lebih pengubah yang akan mengubah tanggal lima fungsi kembali dan / atau waktu. Salah satu dari lima fungsi di atas kembali waktu. Dari kiri ke kanan modifikator harus digunakan pengubah tercantum di bawah ini dapat digunakan dalam SQLite yang:
hari NNN
jam NNN
NNN menit
detik NNN.NNNN
NNN bulan
NNN tahun
awal bulan
awal tahun
awal hari
hari kerja N
unixepoch
localtime
utc
format
SQLite menyediakan fungsistrftime sangat nyaman ()untuk memformat setiap tanggal dan waktu. Anda dapat menggunakan format berikut untuk mengganti tanggal dan waktu:
替换 | 描述 | %d | 一月中的第几天,01-31 | %f | 带小数部分的秒,SS.SSS | %H | 小时,00-23 | %j | 一年中的第几天,001-366 | %J | 儒略日数,DDDD.DDDD | %m | 月,00-12 | %M | 分,00-59 | %s | 从 1970-01-01 算起的秒数 | %S | 秒,00-59 | %w | 一周中的第几天,0-6 (0 is Sunday) | %W | 一年中的第几周,01-53 | %Y | 年,YYYY | %% | % symbol |
---|
contoh
Sekarang mari kita gunakan SQLite cepat mencoba kasus yang berbeda. Berikut ini adalah perhitungan tanggal saat ini:
sqlite> tanggal SELECT ( 'sekarang'); 2013/05/07
Berikut ini adalah perhitungan hari terakhir bulan ini:
sqlite> tanggal SELECT ( 'sekarang', 'awal bulan', '+ 1 bulan', '- 1 hari'); 2013/05/31
Berikut ini adalah perhitungan dari UNIX timestamp diberikan dari tanggal dan waktu 1092941466:
sqlite> datetime SELECT (1092941466, 'unixepoch'); 2004/08/19 18:51:06
Berikut ini adalah perhitungan tanggal tertentu dan waktu UNIX timestamp 1092941466 zona waktu yang relatif lokal:
sqlite> datetime SELECT (1092941466, 'unixepoch', 'localtime'); 2004/08/19 11:51:06
Berikut ini adalah perhitungan UNIX timestamp saat ini:
sqlite> datetime SELECT (1092941466, 'unixepoch', 'localtime'); 1367926057
Berikut ini adalah perhitungan jumlah hari Amerika Serikat "Deklarasi Kemerdekaan" sejak penandatanganan:
sqlite> julianday SELECT ( 'sekarang') - julianday ( '1776/07/04'); 86.504,4775830326
Berikut ini dihitung sejak tahun 2004, pada saat tertentu jumlah detik:
sqlite> strftime SELECT ( '% s', 'sekarang') - strftime ( '% s', '2004/01/01 02:34:56'); 295 001 572
Berikut ini adalah perhitungan Selasa pertama bulan Oktober tanggal tahun itu:
sqlite> tanggal SELECT ( 'sekarang', 'awal tahun', '+ 9 bulan', 'hari kerja 2'); 2013/10/01
Berikut ini dihitung dari zaman UNIX di detik menghitung waktu (mirip dengan strftime ( '% s', 'sekarang'), adalah bahwa ada yang berbeda termasuk bagian pecahan):
sqlite> SELECT (julianday ( 'sekarang') - 2.440.587,5) * 86.400,0; 1,367,926,077.12598
Di antara UTC dan waktu lokal, nilai konversi, ketika format tanggal, penggunaan UTC atau localtime pengubah, sebagai berikut:
sqlite> waktu SELECT ('12: 00 ',' localtime '); 05:00:00
sqlite> waktu SELECT ('12: 00 ',' utc '); 19:00:00