วันที่และเวลา SQLite
SQLite สนับสนุนต่อไปนี้ห้าวันที่และเวลาการทำงาน:
เลขที่ | ฟังก์ชัน | ตัวอย่าง |
---|---|---|
1 | วันที่ (timestring, ปรับปรุง, ปรับปรุง, ... ) | ผลตอบแทนรูปแบบวันที่ YYYY-MM-DD |
2 | เวลา (timestring, ปรับปรุง, ปรับปรุง, ... ) | ใน HH: MM: SS รูปแบบเวลากลับมา |
3 | วันที่และเวลา (timestring, ปรับปรุง, ปรับปรุง, ... ) | ใน YYYY-MM-DD HH: MM: SS รูปแบบที่จะกลับมา |
4 | JulianDay (timestring, ปรับปรุง, ปรับปรุง, ... ) | นี้จะส่งกลับจำนวนวันจากเวลาของ 4714 ปีก่อนคริสตกาลกรีนวิชในวันที่ 24 พฤศจิกายนที่นับเที่ยง |
5 | strftime (รูปแบบ timestring, ปรับปรุง, ปรับปรุง, ... ) | นี้จะส่งกลับวันที่จัดรูปแบบตามพารามิเตอร์แรกระบุสตริงรูปแบบ ดูด้านล่างอธิบายรูปแบบที่เฉพาะเจาะจง |
ห้าวันที่และเวลาฟังก์ชั่นสตริงเวลาเป็นพารามิเตอร์ สตริงเวลาตามด้วยศูนย์หรือมากกว่าการปรับเปลี่ยนปรับปรุง strftime () ฟังก์ชันยังสามารถรูปแบบสตริงรูปแบบเป็นอาร์กิวเมนต์แรกของ ด้านล่างนี้คุณจะได้พบกับคำอธิบายรายละเอียดที่แตกต่างกันของสตริงเวลาและการปรับเปลี่ยน
สตริงเวลา
สตริงเวลาที่สามารถรูปแบบใด ๆ ต่อไปนี้:
序号 | 时间字符串 | 实例 |
---|---|---|
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 |
คุณสามารถใช้ "T" แยกวันที่และเวลาเป็นตัวอักษรข้อความ
การปรับเปลี่ยน (ปรับปรุง)
สตริงเวลาสามารถตามกลับเป็นศูนย์หรือมากกว่าการปรับเปลี่ยนที่จะเปลี่ยนวันที่กลับมาทำงานห้าและ / หรือเวลา ดังกล่าวข้างต้นห้าฟังก์ชั่นเวลากลับ จากซ้ายไปขวาปรับปรุงควรจะใช้การปรับเปลี่ยนอยู่ด้านล่างสามารถใช้ใน SQLite นี้:
NNN วัน
ชั่วโมง NNN
NNN นาที
วินาที NNN.NNNN
เดือนมมมม
ปี NNN
จุดเริ่มต้นของเดือน
เริ่มต้นของปี
เริ่มต้นของวัน
วันธรรมดา N
unixepoch
localtime
UTC
รูป
SQLite ยังมีฟังก์ชั่นstrftime สะดวกมาก ()เพื่อจัดรูปแบบวันที่และเวลา คุณสามารถใช้รูปแบบต่อไปที่จะเปลี่ยนวันที่และเวลา:
替换 | 描述 | %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 |
---|
ตัวอย่าง
ตอนนี้ขอใช้ SQLite พรอมต์พยายามกรณีที่แตกต่างกัน ต่อไปนี้คือการคำนวณวันที่ปัจจุบัน:
SQLite> วันที่เลือก ( 'ตอน'); 2013/05/07
ต่อไปนี้คือการคำนวณวันสุดท้ายของเดือนปัจจุบัน:
SQLite> วันที่เลือก ( 'ตอนนี้', 'จุดเริ่มต้นของเดือน', '+ 1 เดือน', '- 1 วัน'); 2013/05/31
ต่อไปนี้คือการคำนวณค่าเวลาในยูนิกซ์ที่กำหนดวันที่และเวลา 1092941466 นี้:
SQLite> datetime SELECT (1092941466 'unixepoch'); 2004/08/19 18:51:06
ต่อไปนี้คือการคำนวณของวันและเวลาที่กำหนดเวลา Unix 1092941466 โซนเวลาค่อนข้างท้องถิ่น:
SQLite> datetime SELECT (1092941466 'unixepoch', 'localtime'); 2004/08/19 11:51:06
ต่อไปนี้คือการคำนวณเวลาในยูนิกซ์ปัจจุบัน:
SQLite> datetime SELECT (1092941466 'unixepoch', 'localtime'); 1367926057
ต่อไปนี้คือการคำนวณจำนวนวันที่สหรัฐอเมริกา "ประกาศอิสรภาพ" ตั้งแต่ลงนาม:
SQLite> JulianDay เลือก (ตอนนี้) - JulianDay (1776/07/04 '); 86,504.4775830326
ต่อไปนี้จะถูกคำนวณตั้งแต่ปี 2004 ในขณะที่กำหนดจำนวนวินาที:
SQLite> strftime เลือก ( '% s', 'วันนี้') - strftime ( '% s', '2004/01/01 02:34:56'); 295 001 572
ต่อไปนี้คือการคำนวณของวันอังคารแรกของเดือนตุลาคมของปีวันที่:
SQLite> วันที่เลือก ( 'ตอนนี้' 'เริ่มต้นของปี', '+ 9 เดือน', 'วันที่ 2'); 2013/10/01
ต่อไปนี้จะถูกคำนวณจากยุค UNIX ในไม่กี่วินาทีนับเวลา (คล้ายกับ strftime นี้ ( '% s', 'วันนี้') คือว่ามีความแตกต่างกันรวมทั้งชิ้นส่วนบางส่วน):
SQLite> เลือก (JulianDay (ตอนนี้) - 2,440,587.5) * 86,400.0; 1,367,926,077.12598
ในระหว่างเวลา UTC และเวลาท้องถิ่นค่าของการแปลงเมื่อวันที่จัดรูปแบบการใช้งานหรือ UTC localtime ปรับปรุงดังนี้
SQLite> เวลาเลือก ('12: 00 ',' localtime '); 05:00:00
SQLite> เวลาเลือก ('12: 00 ',' UTC '); 19:00:00