SQLITE 数据库常用函数的详细说明及示例

套图传送门

SQLite 是一款轻量级的嵌入式数据库,提供了丰富的内置函数,以下将分类介绍常见的 SQLite 函数及其详细说明、用法和示例:

字符串函数

1. LENGTH()

  • 说明:返回字符串的字符数。
  • 用法LENGTH(string)
  • 示例

收起

sql

SELECT LENGTH('Hello'); 
-- 输出: 5

2. SUBSTR()

  • 说明:从字符串中提取子字符串。
  • 用法SUBSTR(string, start [, length])start 从 1 开始计数,若省略 length 则截取到字符串末尾。
  • 示例

收起

sql

SELECT SUBSTR('Hello World', 7, 5); 
-- 输出: World

3. UPPER() 和 LOWER()

  • 说明UPPER() 将字符串转换为大写,LOWER() 将字符串转换为小写。
  • 用法
    • UPPER(string)
    • LOWER(string)
  • 示例

收起

sql

SELECT UPPER('hello'); 
-- 输出: HELLO
SELECT LOWER('WORLD'); 
-- 输出: world

4. TRIM()

  • 说明:去除字符串两端的空格或指定字符。
  • 用法TRIM([characters FROM] string)
  • 示例

收起

sql

SELECT TRIM('   Hello   '); 
-- 输出: Hello
SELECT TRIM('xyz' FROM 'xyzHelloxyz'); 
-- 输出: Hello

数值函数

1. ABS()

  • 说明:返回一个数的绝对值。
  • 用法ABS(number)
  • 示例

收起

sql

SELECT ABS(-10); 
-- 输出: 10

2. ROUND()

  • 说明:对数值进行四舍五入。
  • 用法ROUND(number [, decimal_places]),若省略 decimal_places 则四舍五入为整数。
  • 示例

收起

sql

SELECT ROUND(3.14159, 2); 
-- 输出: 3.14

3. CEIL() 和 FLOOR()

  • 说明CEIL() 返回大于或等于给定数值的最小整数,FLOOR() 返回小于或等于给定数值的最大整数。
  • 用法
    • CEIL(number)
    • FLOOR(number)
  • 示例

收起

sql

SELECT CEIL(3.1); 
-- 输出: 4
SELECT FLOOR(3.9); 
-- 输出: 3

日期和时间函数

1. DATE()TIME() 和 DATETIME()

  • 说明:分别返回当前日期、当前时间和当前日期时间。
  • 用法
    • DATE('now')
    • TIME('now')
    • DATETIME('now')
  • 示例

收起

sql

SELECT DATE('now'); 
-- 输出当前日期,例如: 2025-02-20
SELECT TIME('now'); 
-- 输出当前时间,例如: 12:34:56
SELECT DATETIME('now'); 
-- 输出当前日期时间,例如: 2025-02-20 12:34:56

2. STRFTIME()

  • 说明:根据指定的格式字符串格式化日期或时间值。
  • 用法STRFTIME(format, timestamp [, modifier, ...])
  • 示例

收起

sql

SELECT STRFTIME('%Y-%m-%d', 'now'); 
-- 输出当前日期,格式为 YYYY-MM-DD

3. JULIANDAY()

  • 说明:返回指定日期或时间的儒略日数。
  • 用法JULIANDAY(timestamp)
  • 示例

收起

sql

SELECT JULIANDAY('2025-02-20'); 
-- 输出对应日期的儒略日数

聚合函数

1. SUM()

  • 说明:计算指定列的总和。
  • 用法SUM(column)
  • 示例:假设有一个 sales 表,包含 amount 列。

收起

sql

SELECT SUM(amount) FROM sales;

2. AVG()

  • 说明:计算指定列的平均值。
  • 用法AVG(column)
  • 示例

收起

sql

SELECT AVG(amount) FROM sales;

3. COUNT()

  • 说明:返回指定列中的行数或非空值的数量。
  • 用法
    • COUNT(*):返回表中的总行数。
    • COUNT(column):返回指定列中非空值的数量。
  • 示例

收起

sql

SELECT COUNT(*) FROM sales;
-- 返回 sales 表的总行数
SELECT COUNT(amount) FROM sales;
-- 返回 amount 列中非空值的数量

4. MAX() 和 MIN()

  • 说明MAX() 返回指定列中的最大值,MIN() 返回指定列中的最小值。
  • 用法
    • MAX(column)
    • MIN(column)
  • 示例

收起

sql

SELECT MAX(amount) FROM sales;
-- 返回 amount 列的最大值
SELECT MIN(amount) FROM sales;
-- 返回 amount 列的最小值

条件函数

1. CASE

  • 说明:根据条件执行不同的操作。
  • 用法

收起

sql

CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ...
    ELSE default_result
END
  • 示例:假设有一个 grades 表,包含 score 列。

收起

sql

SELECT 
    score,
    CASE
        WHEN score >= 90 THEN 'A'
        WHEN score >= 80 THEN 'B'
        WHEN score >= 70 THEN 'C'
        WHEN score >= 60 THEN 'D'
        ELSE 'F'
    END AS grade
FROM grades;

其他函数

1. RANDOM()

  • 说明:返回一个介于 -9223372036854775808 到 +9223372036854775807 之间的随机整数。
  • 用法RANDOM()
  • 示例

收起

sql

SELECT RANDOM();

2. COALESCE()

  • 说明:返回参数列表中的第一个非空值。
  • 用法COALESCE(value1, value2, ...)
  • 示例

收起

sql

SELECT COALESCE(NULL, 'Hello', 'World'); 
-- 输出: Hello

以上只是 SQLite 中部分常见函数的介绍,SQLite 还有一些其他特性的函数,你可以参考 SQLite 官方文档获取更全面的信息。

套图传送门
THE END
喜欢就支持一下吧
点赞26 分享