SQLite 有许多内置函数用于处理字符串或数字数据。下面列出了一些有用的 SQLite 内置函数,且所有函数都是大小写不敏感,这意味着您可以使用这些函数的小写形式或大写形式或混合形式。
我们用下表作为例子。
ID NAME AGE ADDRESS SALARY
---- ---- ---- ------ ------
1 Paul 32 California 20000.0
2 Allen 25 Texas 15000.0
3 Teddy 23 Norway 20000.0
4 Mark 25 Rich-Mond 65000.0
5 Paul 32 Los Angeles 10000.0
6 Allen 25 Dallas 35000.0
7 Teddy 23 Oslo 15000.0
COUNT 函数
COUNT
聚集函数是用来计算一个数据库表中的行数。我们先在按 name
来计算各员工的出现次数:
select name, count(name) from company group by name;
结果:
NAME count(name)
---- -------
Allen 2
Mark 1
Paul 2
Teddy 2
MAX 函数
MAX
聚合函数允许我们选择某列的最大值。我们计算 age
最大的员工:
select max(age),* from company
结果:
max(age) ID NAME AGE ADDRESS SALARY
------- ---- ---- ------ -------- ------
32 1 Paul 32 California 20000.0
MIN 函数
MIN
聚合函数允许我们选择某列的最小值。用法个SQLite MAX
类似。
AVG 函数
AVG
聚合函数计算某列的平均值。计算员工的平均 salary
。
select name, avg(salary) from company group by name;
结果:
NAME avg(salary)
----- -----------
Allen 25000.0
Mark 65000.0
Paul 15000.0
Teddy 17500.0
SUM 函数
SUM
聚合函数允许为一个数值列计算总和。计算各员工 salary
总和。
select name, sum(salary) from company group by name;
结果:
NAME sum(salary)
---- --------
Allen 50000.0
Mark 65000.0
Paul 30000.0
Teddy 35000.0
RANDOM 函数
SQLite RANDOM
函数返回一个介于 -9223372036854775808
和 +9223372036854775807
之间的伪随机整数。
ABS 函数
ABS
函数返回数值参数的绝对值。
UPPER 函数
SQLite UPPER
函数把字符串转换为大写字母。
LOWER 函数
LOWER
函数把字符串转换为小写字母。
GROUP_CONCAT 函数
GROUP_CONCAT
函数用于拼接字符串。
例子:
select name, group_concat(address) from company group by name
结果:
NAME group_concat(address)
---- ------------------
Allen Texas,Dallas
Mark Rich-Mond
Paul California,Los Angeles
Teddy Norway,Oslo