SQLite函数大全

简介: abs(X) 返回参数X的绝对值 coalesce(X,Y,……) 返回第一个非空参数的副本。若所有的参数均为NULL,返回NULL。至少2个参数。 ifnull(X,Y) 返回第一个非空参数的副本。

abs(X) 返回参数X的绝对值

coalesce(X,Y,……) 返回第一个非空参数的副本。若所有的参数均为NULL,返回NULL。至少2个参数。

ifnull(X,Y) 返回第一个非空参数的副本。若两个参数均为NULL,返回NULL。

last_insert_rowid() 返回当前数据库连接最后插入行的RowID。

length(X) 返回X的长度,以字符计。 

lower(X) 返回X字符串的所有字符小写化版本。

max(X,Y) 返回最大值。

nullif(X,Y) 当两参数不同时返回X,否则返回NULL。

quote(X) 返回参数的适于插入其他SQL语句中的值。字符串会被添加单引号。

random(*) 返回介于-231和231之间的随机整数。

round(X)或round(X,Y) 将X四舍五入,保留小数点后Y位。若忽略Y参数,则默认其为0。 

sqlite_version(*) 返回所运行的SQLite库的版本号字符串。

substr(X,Y,Z) 返回输入字符串X中以第Y个字符开始,Z个字符长的子串。X最左端的字符序号为1。若Y为负,则从右至左数起。

typeof(X) 返回表达式X的类型。

upper(X) 返回X字符串的所有字符大写化版本。

在单参数聚集函数中,参数可以加前缀distinct。这时重复参数会被过滤掉,然后才传入到函数中。例如,函数count(distinct X)返回字段X的不重复非空值的个数,而不是字段X的全部非空值。

avg(X) 返回一组中非空的X的平均值。非数字值作0处理。结果总是一个浮点数。

count(X) 返回一组中X是非空值的次数。

count(*) 返回该组中的行数。

change_count() 返回受上一语句影响的行数。 

max(X) 返回一组中的最大值。

min(X) 返回一组中的最小值。

sum(X)和total(X) 返回一组中所有非空值的数字和。若没有非空行,sum()返回null而total()返回0.0。total()的返回值为浮点数,sum()可以为整数。

date(日期时间字符串,修正符,修正符,……) 返回一个以YYYY-MM-DD为格式的日期。

time(日期时间字符串,修正符,修正符,……) 返回一个以HH:MM:SS 为格式的日期时间。

datetime(日期时间字符串,修正符,修正符,……) 返回一个以YYYY-MM-DD HH:MM:SS 为格式的日期时间。  julianday(日期时间字符串,修正符,修正符,……) 返回一个天数,从格林威治时间公元前4714年11月24号开始算起。

strftime(日期时间格式,日期时间字符串,修正符,修正符,……) 返回一个经过格式化的日期时间,它可以用以下的符号对日期和时间进行格式化:

%d一月中的第几天,01-31

%f小数形式的秒,SS.SSSS

%H小时,00-24

%j一年中的第几天,01-366

%JJulian Day Numbers

%m月份,01-12

%M分钟,00-59

%s从1970-01-01日开始计算的秒数

%S秒,00-59

%w星期,0-6

%W一年中的第几周,00-53

%Y年份,0000-9999

%%%,百分号

 其他四个函数都可以用strftime()函数来表示:

date(……)strftime('%Y-%m-%d',……) 

time(……)strftime('%H:%M:%S',……)

datetime(……)strftime('%Y-%m-%d %H:%M:%S',……)

julianday(……)strftime('%J',……)

日期时间字符串,可以用以下几种格式:

YYYY-MM-DD

YYYY-MM-DD HH:MM

YYYY-MM-DD HH:MM:SS

YYYY-MM-DD HH:MM:SS.SSS

YYYY-MM-DDTHH:MM(T是一个分割日期和时间的字符)

YYYY-MM-DDTHH:MM:SS

YYYY-MM-DDTHH:MM:SS.SSS

HH:MM

HH:MM:SS

HH:MM:SS.SSS

now(返回一个当前的日期和时间,使用格林威治时间UTC)

DDDD.DDDD

日期和时间可以使用下面的修正符来更改日期或时间:

(1)增加指定数值的日期和时间

NNN days

NNN hours

NNN minutes

NNN.NNNN seconds

NNN months

NNN years

(2)返回当前日期的开始

start of month

start of year

start of week

start of day

(3)返回下一个星期是N的日期和时间

 weekday N

(4)返回从1970-01-01开始算起的秒数

unixepoch

(5)返回本地时间

localtime

例子:

计算机当前时间:date('now')

计算机当前月份的最后一天:date('now','start of month','+1 month','-1 day')

计算UNIX时间戳1092941466表示的日期和时间:datetime('1092941466','unixepoch')

计算UNIX时间戳1092941466表示的本地日期和时间:datetime('1092941466','unixepoch','localtime')

计算机当前UNIX时间戳:strftime('%s','now')

两个日期之间相差多少天:julianday('now')-julianday('1981-12-23')

两个日期时间之间相差多少秒:julianday('now')*86400-juianday('2004-01-01 02:34:45')*86400

计算今年十月份第一人星期二的日期:date('now','start of year','+9 months','weekday 2') 

相关文章
|
22天前
|
SQL 数据挖掘 测试技术
南大通用GBase8s数据库:LISTAGG函数的解析
南大通用GBase8s数据库:LISTAGG函数的解析
|
10天前
|
关系型数据库 MySQL 数据库
Python处理数据库:MySQL与SQLite详解 | python小知识
本文详细介绍了如何使用Python操作MySQL和SQLite数据库,包括安装必要的库、连接数据库、执行增删改查等基本操作,适合初学者快速上手。
74 15
|
22天前
|
SQL 测试技术 数据库
|
1月前
|
存储 SQL 数据库
数据库知识:了解SQLite或其他移动端数据库的使用
【10月更文挑战第22天】本文介绍了SQLite在移动应用开发中的应用,包括其优势、如何在Android中集成SQLite、基本的数据库操作(增删改查)、并发访问和事务处理等。通过示例代码,帮助开发者更好地理解和使用SQLite。此外,还提到了其他移动端数据库的选择。
41 8
|
2月前
|
Web App开发 SQL 数据库
使用 Python 解析火狐浏览器的 SQLite3 数据库
本文介绍如何使用 Python 解析火狐浏览器的 SQLite3 数据库,包括书签、历史记录和下载记录等。通过安装 Python 和 SQLite3,定位火狐数据库文件路径,编写 Python 脚本连接数据库并执行 SQL 查询,最终输出最近访问的网站历史记录。
40 4
|
2月前
|
SQL 数据库 数据库管理
数据库SQL函数应用技巧与方法
在数据库管理中,SQL函数是处理和分析数据的强大工具
|
2月前
|
存储 关系型数据库 数据库
轻量级数据库的利器:Python 及其内置 SQLite 简介
轻量级数据库的利器:Python 及其内置 SQLite 简介
68 3
|
2月前
|
应用服务中间件 PHP Apache
PbootCMS提示错误信息“未检测到您服务器环境的sqlite3数据库扩展...”
PbootCMS提示错误信息“未检测到您服务器环境的sqlite3数据库扩展...”
|
3月前
|
存储 API 数据库
QML使用Sqlite数据库存储ListModel数据
本文介绍了在QML中使用Sqlite数据库存储ListModel数据的方法,包括如何创建数据库、读取数据、动态添加和删除数据,以及如何在程序启动和退出时与数据库同步数据。
|
3月前
|
数据库 数据库管理
qt对sqlite数据库多线程的操作
本文总结了在Qt中进行SQLite数据库多线程操作时应注意的四个关键问题,包括数据库驱动加载、加锁、数据库的打开与关闭,以及QsqlQuery变量的使用。
216 1