[转载][QT][SQL]sql学习记录7_sqlite 日期 & 时间
转载自:定义及示例请见 : http://www.runoob.com/sqlite/sqlite-date-time.html
SQLite 日期 & 时间
SQLite 支持以下五个日期和时间函数:
| 序号 | 函数 | 实例 |
|---|---|---|
| 1 | date(timestring, modifier, modifier, ...) | 以 YYYY-MM-DD 格式返回日期。 |
| 2 | time(timestring, modifier, modifier, ...) | 以 HH:MM:SS 格式返回时间。 |
| 3 | datetime(timestring, modifier, modifier, ...) | 以 YYYY-MM-DD HH:MM:SS 格式返回。 |
| 4 | julianday(timestring, modifier, modifier, ...) | 这将返回从格林尼治时间的公元前 4714 年 11 月 24 日正午算起的天数。 |
| 5 | strftime(format, timestring, modifier, modifier, ...) | 这将根据第一个参数指定的格式字符串返回格式化的日期。具体格式见下边讲解。 |
上述五个日期和时间函数把时间字符串作为参数。时间字符串后跟零个或多个 modifier 修饰符。strftime() 函数也可以把格式字符串 format 作为其第一个参数。下面将为您详细讲解不同类型的时间字符串和修饰符。
时间字符串
一个时间字符串可以采用下面任何一种格式:
| 序号 | 时间字符串 | 实例 |
|---|---|---|
| 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" 作为分隔日期和时间的文字字符。
修饰符(Modifier)
时间字符串后边可跟着零个或多个的修饰符,这将改变有上述五个函数返回的日期和/或时间。任何上述五大功能返回时间。修饰符应从左到右使用,下面列出了可在 SQLite 中使用的修饰符:
NNN days
NNN hours
NNN minutes
NNN.NNNN seconds
NNN months
NNN years
start of month
start of year
start of day
weekday 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> SELECT date('now');
2013-05-07
下面是计算当前月份的最后一天:
sqlite> SELECT date('now','start of month','+1 month','-1 day');
2013-05-31
下面是计算给定 UNIX 时间戳 1092941466 的日期和时间:
sqlite> SELECT datetime(1092941466, 'unixepoch');
2004-08-19 18:51:06
下面是计算给定 UNIX 时间戳 1092941466 相对本地时区的日期和时间:
sqlite> SELECT datetime(1092941466, 'unixepoch', 'localtime');
2004-08-19 11:51:06
下面是计算当前的 UNIX 时间戳:
sqlite> SELECT strftime('%s','now');
1367926057
下面是计算美国"独立宣言"签署以来的天数:
sqlite> SELECT julianday('now') - julianday('1776-07-04');
86504.4775830326
下面是计算从 2004 年某一特定时刻以来的秒数:
sqlite> SELECT strftime('%s','now') - strftime('%s','2004-01-01 02:34:56');
295001572
下面是计算当年 10 月的第一个星期二的日期:
sqlite> SELECT date('now','start of year','+9 months','weekday 2');
2013-10-01
下面是计算从 UNIX 纪元算起的以秒为单位的时间(类似 strftime('%s','now') ,不同的是这里有包括小数部分):
sqlite> SELECT (julianday('now') - 2440587.5)*86400.0;
1367926077.12598
在 UTC 与本地时间值之间进行转换,当格式化日期时,使用 utc 或 localtime 修饰符,如下所示:
sqlite> SELECT time('12:00', 'localtime');
05:00:00
sqlite> SELECT time('12:00', 'utc');
19:00:00
[转载][QT][SQL]sql学习记录7_sqlite 日期 & 时间的更多相关文章
- PL/SQL学习笔记之日期时间
一:PL/SQL时间相关类型 PL/SQL提供两个和日期时间相关的数据类型: 日期时间(Datetime)数据类型 时间间隔类型 二:日期时间类型 datetime数据类型有: DATE TIMEST ...
- php 学习笔记之日期时间操作一箩筐
格式化日期时间 date : 格式化日期时间 场景 将当前日期时间或者特定日期时间格式化输出为特定格式的字符串,常用于人性化展示信息. 说明 返回给定时间戳格式化后所产生的日期时间字符串,如果没有给出 ...
- [转载][QT][SQL]sq]学习记录1_模糊搜索
转载自:sql学习网站: http://www.w3school.com.cn/sql/index.asp 用于模糊搜索数据库的数据 语句:http://www.w3school.com.cn/sql ...
- [QT][SQLITE]学习记录二 日期查询
资料例程: 1.dongfangyu SQL时间段查询 : http://blog.csdn.net/dongfangyu/article/details/4607236 2.痕网 - henw S ...
- SQL语法学习记录——JOIN
学习内容参考来源:www.runoob.com JOIN准备 --为了方便练习,在数据库中创建演示数据: create database TEST; use TEST ; ---------- go ...
- SQL Server学习记录之获取每月每季度每年第一天和最后一天
DECLARE@dtdatetime SET@dt=GETDATE() DECLARE@numberint --1.指定日期该年的第一天或最后一天 --A. 年的第一天 SELECTCONVERT() ...
- QT界面绘制学习记录
1. MVC结构中,model必须作为类的成员变量存在,不可再函数内部申明.否则,会出现函数调用结束,model找不到的错误. 2.QcomboBox可设置为左边空白,右侧一小箭头的形式.代码:com ...
- 【转载】Spring boot学习记录(二)-配置文件解析
前言:本系列文章非本人原创,转自:http://tengj.top/2017/04/24/springboot0/ 正文 Spring Boot使用了一个全局的配置文件application.prop ...
- 【转载】Spring boot学习记录(一)-入门篇
前言:本系列文章非本人原创,转自:http://tengj.top/2017/04/24/springboot0/ 正文 首先声明,Spring Boot不是一门新技术.从本质上来说,Spring B ...
随机推荐
- Redis之Redis
Redis 环境安装 安装 如果已经安装了老版本3.0.6 1. 卸载软件 sudo apt-get remove redis-server 2. 清除配置 sudo apt-get remove - ...
- LeetCode——merge-two-sorted-lists
Question Merge two sorted linked lists and return it as a new list. The new list should be made by s ...
- Hive中的数据倾斜
Hive中的数据倾斜 hive 1. 什么是数据倾斜 mapreduce中,相同key的value都给一个reduce,如果个别key的数据过多,而其他key的较少,就会出现数据倾斜.通俗的说,就是我 ...
- sleep(),wait(),yield()和join()方法的区别
sleep() sleep()方法需要指定等待的时间,它可以让当前正在执行的线程在指定的时间内暂停执行,进入阻塞状态,该方法既可以让其他同优先级或者高优先级 的线程得到执行的机会,也可以让低优先级的线 ...
- css中pt、px、em、ex、in等这类长度单位详细说明
在CSS样式表中,我们经常会看到pt, px,em,ex,in等这类长度单位.它们各是什么意思,有什么区别呢? 在CSS样式表中,长度单位分两种: 相对长度单位,如px, em等 绝对长度单位,如pt ...
- IE8下使用asp.net core mvc+jquery ajaxSubmit问题
由于项目中一些特殊的地方使用了ajaxSubmit提交数据,但发现在IE8中出现问题,使用该方式提交数据后,无法返回提交结果,而是直接下载该方法名的一个文件,翻阅了园子,终于找到了最简单的解决办法,特 ...
- Ubuntu下配置Nginx+PHP
1.安装Nginxapt-get install nginx 2.启动Nginxservice nginx start 3.访问服务器IP 如果看到“Welcome to nginx!”说明安装好了. ...
- 转:25个Java机器学习工具和库
转自:http://www.cnblogs.com/data2value/p/5419864.html 本列表总结了25个Java机器学习工具&库: 1. Weka集成了数据挖掘工作的机器学习 ...
- 继承AbstractRoutingDataSource再通过AOP实现动态数据源切换
package com.zdd.data.aspect; import java.util.ArrayList; import java.util.HashMap; import java.util. ...
- vue踩坑之旅 -- computed watch
vue踩坑之旅 -- computed watch 经常在使用vue初始化组件时,会报一些莫名其妙的错误,或者,数据明明有数据,确还是拿不到,这是多么痛苦而又令人忍不住抓耳挠腮,捶胸顿足啊 技术点 v ...