SQLite 常用函式

SQLite 常用函式

SQLite 有許多內建函式用於處理字串或數字資料。下面列出了一些有用的 SQLite 內建函式,且所有函式都是大小寫不敏感,這意味著您可以使用這些函式的小寫形式或大寫形式或混合形式。欲瞭解更多詳情,請檢視 SQLite 的官方文件:

序號函式 & 描述
1SQLite COUNT 函式
SQLite COUNT 聚集函式是用來計算一個數據庫表中的行數。
2SQLite MAX 函式
SQLite MAX 聚合函式允許我們選擇某列的最大值。
3SQLite MIN 函式
SQLite MIN 聚合函式允許我們選擇某列的最小值。
4SQLite AVG 函式
SQLite AVG 聚合函式計算某列的平均值。
5SQLite SUM 函式
SQLite SUM 聚合函式允許為一個數值列計算總和。
6SQLite RANDOM 函式
SQLite RANDOM 函式返回一個介於 -9223372036854775808 和 +9223372036854775807 之間的偽隨機整數。
7SQLite ABS 函式
SQLite ABS 函式返回數值引數的絕對值。
8SQLite UPPER 函式
SQLite UPPER 函式把字串轉換為大寫字母。
9SQLite LOWER 函式
SQLite LOWER 函式把字串轉換為小寫字母。
10SQLite LENGTH 函式
SQLite LENGTH 函式返回字串的長度。
11SQLite sqlite_version 函式
SQLite sqlite_version 函式返回 SQLite 庫的版本。

在我們開始講解這些函式例項之前,先假設 COMPANY 表有以下記錄:

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           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0

SQLite COUNT 函式

SQLite COUNT 聚集函式是用來計算一個數據庫表中的行數。下面是例項:

sqlite> SELECT count(*) FROM COMPANY;

上面的 SQLite SQL 語句將產生以下結果:

count(*)
----------
7

SQLite MAX 函式

SQLite MAX 聚合函式允許我們選擇某列的最大值。下面是例項:

sqlite> SELECT max(salary) FROM COMPANY;

上面的 SQLite SQL 語句將產生以下結果:

max(salary)
-----------
85000.0

SQLite MIN 函式

SQLite MIN 聚合函式允許我們選擇某列的最小值。下面是例項:

sqlite> SELECT min(salary) FROM COMPANY;

上面的 SQLite SQL 語句將產生以下結果:

min(salary)
-----------
10000.0

SQLite AVG 函式

SQLite AVG 聚合函式計算某列的平均值。下面是例項:

sqlite> SELECT avg(salary) FROM COMPANY;

上面的 SQLite SQL 語句將產生以下結果:

avg(salary)
----------------
37142.8571428572

SQLite SUM 函式

SQLite SUM 聚合函式允許為一個數值列計算總和。下面是例項:

sqlite> SELECT sum(salary) FROM COMPANY;

上面的 SQLite SQL 語句將產生以下結果:

sum(salary)
-----------
260000.0

SQLite RANDOM 函式

SQLite RANDOM 函式返回一個介於 -9223372036854775808 和 +9223372036854775807 之間的偽隨機整數。下面是例項:

sqlite> SELECT random() AS Random;

上面的 SQLite SQL 語句將產生以下結果:

Random
-------------------
5876796417670984050

SQLite ABS 函式

SQLite ABS 函式返回數值引數的絕對值。下面是例項:

sqlite> SELECT abs(5), abs(-15), abs(NULL), abs(0), abs("ABC");

上面的 SQLite SQL 語句將產生以下結果:

abs(5)      abs(-15)    abs(NULL)   abs(0)      abs("ABC")
----------  ----------  ----------  ----------  ----------
5           15                      0           0.0

SQLite UPPER 函式

SQLite UPPER 函式把字串轉換為大寫字母。下面是例項:

sqlite> SELECT upper(name) FROM COMPANY;

上面的 SQLite SQL 語句將產生以下結果:

upper(name)
-----------
PAUL
ALLEN
TEDDY
MARK
DAVID
KIM
JAMES

SQLite LOWER 函式

SQLite LOWER 函式把字串轉換為小寫字母。下面是例項:

sqlite> SELECT lower(name) FROM COMPANY;

上面的 SQLite SQL 語句將產生以下結果:

lower(name)
-----------
paul
allen
teddy
mark
david
kim
james

SQLite LENGTH 函式

SQLite LENGTH 函式返回字串的長度。下面是例項:

sqlite> SELECT name, length(name) FROM COMPANY;

上面的 SQLite SQL 語句將產生以下結果:

NAME        length(name)
----------  ------------
Paul        4
Allen       5
Teddy       5
Mark        4
David       5
Kim         3
James       5

SQLite sqlite_version 函式

SQLite sqlite_version 函式返回 SQLite 庫的版本。下面是例項:

sqlite> SELECT sqlite_version() AS 'SQLite Version';

上面的 SQLite SQL 語句將產生以下結果:

SQLite Version
--------------
3.6.20