Sqlite3支持的数据类型
NULL
INTEGER
REAL
TEXT
BLOB
但实际上,sqlite3也接受如下的数据类型:
smallint 16 位元的整数。
interger 32 位元的整数。
decimal(p,s) p 精确值和 s 大小的十进位整数,精确值p是指全部有几个数(digits)大小值,s是指小数点後有几位数。如果没有特别指定,则系统会设为 p=5; s=0 。
float  32位元的实数。
double  64位元的实数。
char(n)  n 长度的字串,n不能超过 254。
varchar(n) 长度不固定且其最大长度为 n 的字串,n不能超过 4000。
graphic(n) 和 char(n) 一样,不过其单位是两个字元 double-bytes, n不能超过127。这个形态是为了支援两个字元长度的字体,例如中文字。
vargraphic(n) 可变长度且其最大长度为 n 的双字元字串,n不能超过 2000
date  包含了 年份、月份、日期。
time  包含了 小时、分钟、秒。
timestamp 包含了 年、月、日、时、分、秒、千分之一秒。

SQLite包含了如下时间/日期函数:
datetime()…………………..产生日期和时间
date()………………………产生日期
time()………………………产生时间
strftime()…………………..对以上三个函数产生的日期和时间进行格式化

datetime()的用法是:datetime(日期/时间,修正符,修正符…)
date()和time()的语法与datetime()相同。

在时间/日期函数里可以使用如下格式的字符串作为参数:
YYYY-MM-DD
YYYY-MM-DD HH:MM
YYYY-MM-DD HH:MM:SS
YYYY-MM-DD HH:MM:SS.SSS
HH:MM
HH:MM:SS
HH:MM:SS.SSS
now
其中now是产生现在的时间。

举例(写这个笔记的时间是2006年10月17日晚8点到10点,测试环境:SQLite 2.8.17,WinXP,北京时间):

例1.
select datetime(‘now’);
结果:2006-10-17 12:55:54

例2.
select datetime(’2006-10-17′);
结果:2006-10-17 12:00:00

例3.
select datetime(’2006-10-17 00:20:00′,’+1 hour’,'-12 minute’);
结果:2006-10-17 01:08:00

例4.
select date(’2006-10-17′,’+1 day’,'+1 year’);
结果:2007-10-18

例5.
select datetime(‘now’,'start of year’);
结果:2006-01-01 00:00:00

例6.
select datetime(‘now’,'start of month’);
结果:2006-10-01 00:00:00

例7.
select datetime(‘now’,'start of day’);
结果:2006-10-17 00:00:00

例8.
select datetime(‘now’,'+10 hour’,'start of day’,'+10 hour’);
结果:2006-10-17 10:00:00

例9.
select datetime(‘now’,'localtime’);
结果:2006-10-17 21:21:47

例10.
select datetime(‘now’,'+8 hour’);
结果:2006-10-17 21:24:45

例3中的+1 hour和-12 minute表示可以在基本时间上(datetime函数的第一个参数)增加或减少一定时间。

例5中的start of year表示一年开始的时间。

从例8可以看出,尽管第2个参数加上了10个小时,但是却被第3个参数“start of day”把时间归零到00:00:00,随后的第4个参数在00:00:00
的基础上把时间增加了10个小时变成了10:00:00。

例9把格林威治时区转换成本地时区。

例10把格林威治时区转换成东八区。

strftime()函数可以把YYYY-MM-DD HH:MM:SS格式的日期字符串转换成其它形式的字符串。
strftime()的语法是strftime(格式, 日期/时间, 修正符, 修正符, …)

它可以用以下的符号对日期和时间进行格式化:
%d 月份, 01-31
%f 小数形式的秒,SS.SSS
%H 小时, 00-23
%j 算出某一天是该年的第几天,001-366
%m 月份,00-12
%M 分钟, 00-59
%s 从1970年1月1日到现在的秒数
%S 秒, 00-59
%w 星期, 0-6 (0是星期天)
%W 算出某一天属于该年的第几周, 01-53
%Y 年, YYYY
%% 百分号

strftime()的用法举例如下:

例11.
select strftime(‘%Y.%m.%d %H:%M:%S’,'now’,'localtime’);
结果:2006.10.17 21:41:09

函数篇:
算术函数
abs(X) 返回给定数字表达式的绝对值。
max(X,Y[,...]) 返回表达式的最大值。
min(X,Y[,...]) 返回表达式的最小值。
random(*) 返回随机数。
round(X[,Y]) 返回数字表达式并四舍五入为指定的长度或精度。
字符处理函数
length(X) 返回给定字符串表达式的字符个数。
lower(X) 将大写字符数据转换为小写字符数据后返回字符表达式。
upper(X) 返回将小写字符数据转换为大写的字符表达式。
substr(X,Y,Z) 返回表达式的一部分。
randstr()
quote(A)
like(A,B) 确定给定的字符串是否与指定的模式匹配。
glob(A,B)
条件判断函数
coalesce(X,Y[,...])
ifnull(X,Y)
nullif(X,Y)
集合函数
avg(X) 返回组中值的平均值。
count(X) 返回组中项目的数量。
max(X) 返回组中值的最大值。
min(X) 返回组中值的最小值。
sum(X) 返回表达式中所有值的和。
其他函数
typeof(X) 返回数据的类型。
last_insert_rowid() 返回最后插入的数据的ID。
sqlite_version(*) 返回SQLite的版本。
change_count() 返回受上一语句影响的行数。
last_statement_change_count()

转载于:https://www.cnblogs.com/xiao-yu/archive/2011/05/24/2055938.html

Sqlite3支持的数据类型 日期函数 Sqlite3 函数相关推荐

  1. Sqlite3支持的数据类型 日期函数以及相关 函数

    Sqlite3支持的数据类型 NULL INTEGER REAL TEXT BLOB 但实际上,sqlite3也接受如下的数据类型: smallint 16 位元的整数. interger 32 位元 ...

  2. clickhouse 常用函数 算数函数 时间函数 日期函数 字符串函数 比较函数 数据类型函数 逻辑函数 类型转换函数 替换函数 数组函数 随机函数 编码函数 UUID URL IP 函数

    clickhouse 常用函数 算数函数 时间函数 日期函数 字符串函数 比较函数 数据类型函数 逻辑函数 类型转换函数 替换函数 数组函数 随机函数 编码函数 UUID URL IP 函数 算数函数 ...

  3. 如何在sqlite3连接中创建并调用自定义函数

    #!/user/bin/env python # @Time :2018/6/8 14:44 # @Author :PGIDYSQ #@File :CreateFunTest.py '''如何在sql ...

  4. go函数详解:函数定义、形参、返回值定义规范、函数内存分析、不支持重载、支持可变参数、基本数据类型和数组默认都是值传递的、支持自定义数据类型、函数返回值命名

    引入 [1]为什么要使用函数: 提高代码的复用型,减少代码的冗余,代码的维护性也提高了 [2]函数的定义: 为完成某一功能的程序指令(语句)的集合,称为函数. [3]基本语法 func 函数名(形参列 ...

  5. 使用template扩展已有的DDX_Text函数,使扩展能够同时支持各种数据类型的一个例子...

    MFC提供了一组DDX_Text函数,能够支持控件和各种数据类型之间的绑定.加入我们要在已有的功能上座一些小小的修改,又希望我们的修改能够适应各种数据类型的话.应该怎样做呢?下面是一个例子. 下面的这 ...

  6. access日期如何增加年数_ACCESS支持的时间日期函数

    ACCESS支持的时间日期函数 参考文章一: 找了半天,终于在微软的网站找到了,对于做ACCESS数据库开发人来说还是有点用处的,有时间的话我会把它翻译成中文.(注:其中大部分对于Access是适用了 ...

  7. sqlite java blob_【转】好东西!sqlite3中BLOB数据类型存储大对象运用示例

    1:常用接口 个人比较喜欢sqlite, 使用最方便,唯一的准备工作是下载250K的源:而且作者很热心,有问必答. 以下演示一下使用sqlite的步骤,先创建一个数据库,然后查询其中的内容.2个重要结 ...

  8. SQLite3中的数据类型

    一.概述 大多数的数据库引擎(到现在据我们所知的除了sqlite的每个sql数据库引擎)都使用静态的.刚性的类型,使用静态类型,数据的类型就由它的容器决定,这个容器是这个指被存放的特定列. Sqlit ...

  9. excel中match函数_Excel函数轻松学02:详解Excel函数中的数据类型

    更多系列文章,戳文末阅读原文进入:我的微博V+会员函数专栏哦~ 写在前面: 概念是用来了解的,不是用来恐惧的.一时无法理解,大可不求甚解,无需刻意强求,往后学习函数的时间里,通过实例人的潜意识会反复思 ...

最新文章

  1. 利用IPSec实现网络安全之三(身份验证和加密数据)
  2. linux usb3.0改2.0,TX1入门教程硬件篇-切换USB2.0与USB3.0
  3. 计算机组装大赛队名,比赛项目设计及评分标准-中国海员技能大比武.DOC
  4. 背景图层和普通图层的区别_新手如何在PS中创建图层?不容错过的7种方法,你值得学习...
  5. 计算机英语句子缩略,根据汉语意思完成英语句子,每空一词(含缩略形式)。 【1】-咋考网...
  6. Nginx 禁止猜测路径上传恶意代码
  7. 【今日CV 计算机视觉论文速览 第113期】Wed, 8 May 2019
  8. html读取oss_阿里云使用js 实现OSS图片上传、获取OSS图片列表(示例代码)
  9. 浅析:浅拷贝 及 深拷贝的传统写法
  10. input file multiple 配合springmvc实现多文件上传
  11. 【前端 · 面试 】HTTP 总结(七)—— HTTP 缓存概述
  12. JS学习总结(2)——变量
  13. C#笔记(一):类型,泛型,集合
  14. 控制台 钢铁雄心2_钢铁雄心2中共事件代码 | 手游网游页游攻略大全
  15. i5双线程_新老系统多项测试:多线程运算谁更靠谱
  16. 2008 r2 server sql 中文版补丁_sql server 2008 r2 sp4下载-SQL Server 2008 sp4补丁3264位 简体中文完整版-东坡下载...
  17. JAVA8新特性的StreamAPI 遇到的问题stream has already been operated upon or closed
  18. python项目实战:pygame控制键盘方向键随意移动
  19. U812.0凭证冲销后前台不能删除问题
  20. 卷积码树状图怎么画_卷积码是什么 卷积码编码原理介绍【图文】

热门文章

  1. 2022-2028年中国粘网胶行业市场深度评估及发展前景规划报告
  2. 2022-2028年中国激光脱毛仪行业市场研究及前瞻分析报告
  3. 2022-2028年中国高粘保护膜行业市场专项调研及发展趋势分析报告
  4. centos 7.4 上安装neo4j并测试
  5. 用python给自己写一个加密算法
  6. Ubuntu使用wget下载zabbix的扩展源
  7. shell编程_linux
  8. list extend 和 append
  9. pytorch版的bilstm+crf实现sequence label
  10. 使用Spring容器