SQLite - 實用函數

歡迎,有志成為程序員的你!今天,我們將深入SQLite的世界,並探索其中一些最實用的函數。作為你們親切友善的鄰居計算機老師,我將帶領你們透過大量的範例和解釋來了解這些概念。所以,拿起你的虛擬筆記本,我們開始吧!

SQLite - Useful Functions

SQLite COUNT 函數

COUNT函數就像是你數據庫中的勤奮會計。它計算符合特定條件的行數。假設你正在管理一個圖書館數據庫,並想知道你有多少本書。

SELECT COUNT(*) FROM books;

這個查詢將返回你圖書館中的總書數。簡單吧?但如果你只想計算科幻小說的書數呢?

SELECT COUNT(*) FROM books WHERE genre = 'Science Fiction';

現在你是帶著目的計數!這個查詢將給你收藏中科幻小說的數量。

SQLite MAX 函數

MAX就像在人群中找到最高的人。它返回一組值中的最高值。我們來找找圖書館中最貴的書:

SELECT MAX(price) FROM books;

這個查詢將返回所有書籍中最高的價格。你也可以用它來對字符串進行操作,找到字母順序上“最後”的項目:

SELECT MAX(title) FROM books;

這將給你字母順序上最後的書名。

SQLite MIN 函數

MIN是MAX的反面。它就像在人群中找到最矮的人。我們來找找最便宜的書:

SELECT MIN(price) FROM books;

和MAX一樣,你也可以對字符串使用它來找到字母順序上“第一”的項目:

SELECT MIN(title) FROM books;

SQLite AVG 函數

AVG就像你親切友善的平均值計算器。它計算一組數字的平均值。我們來找找所有書的平均價格:

SELECT AVG(price) FROM books;

這個查詢將給你圖書館中所有書的平均價格。你也可以對特定類別使用它:

SELECT AVG(price) FROM books WHERE genre = 'Mystery';

現在你知道了推理小說的平均價格!

SQLite SUM 函數

SUM就像你數據庫中的現金註冊機。它加起一組中的所有值。我們來計算圖書館中所有書的總價值:

SELECT SUM(price) FROM books;

這個查詢將給你書籍收藏的總價值。你也可以對特定條件求和:

SELECT SUM(price) FROM books WHERE author = 'J.K. Rowling';

現在你知道圖書館中所有J.K. Rowling書籍的總價值!

SQLite RANDOM 函數

RANDOM是一個有趣的、不可預測的函數,它為你的查詢添加了一絲機遇。它返回一個在-9223372036854775808到+9223372036854775807之間的隨機值。我們用它來隨機選擇一本書:

SELECT * FROM books ORDER BY RANDOM() LIMIT 1;

這個查詢將從你的圖書館中給你一本隨機的書。這就像一個數字“今日之書”選擇器!

SQLite ABS 函數

ABS是數學世界中的和平維護者。它返回一個數字的絕對值(正數)。假設你有一個“price_difference”列,顯示每本書價格的變化:

SELECT title, ABS(price_difference) FROM books;

這個查詢將向你展示價格變化的範圍,無論它們是上升還是下降。

SQLite UPPER 函數

UPPER就像你那個喜歡全大寫的朋友。它將字符串轉換為全部大寫字母。我們來大聲說出所有的書名:

SELECT UPPER(title) FROM books;

這將返回所有書名的大寫形式。對於強調或標準化很有用!

SQLite LOWER 函數

LOWER是UPPER的平和對應。它將字符串轉換為全部小寫字母。我們來小聲說出所有的作者名:

SELECT LOWER(author) FROM books;

這將返回所有作者名的小寫形式。對於不区分大小寫的比較或數據清洗很有用。

SQLite LENGTH 函數

LENGTH是字符串世界的尺子。它返回字符串中的字符數。我們來找出哪本書的標題最長:

SELECT title, LENGTH(title) AS title_length FROM books ORDER BY title_length DESC LIMIT 1;

這個查詢將返回標題最長的書及其字符數。

SQLite sqlite_version 函數

最後,sqlite_version就像檢查你的SQLite教科書版本。它返回你正在使用的SQLite版本:

SELECT sqlite_version();

這將告訴你正在使用哪個版本的SQLite,這對於兼容性和功能可用性很重要。

這裡有一個方便的表格,總結了所有這些函數:

函數 用途 範例
COUNT 計算行數 SELECT COUNT(*) FROM books;
MAX 找到最大值 SELECT MAX(price) FROM books;
MIN 找到最小值 SELECT MIN(price) FROM books;
AVG 計算平均值 SELECT AVG(price) FROM books;
SUM 總計值 SELECT SUM(price) FROM books;
RANDOM 生成隨機值 SELECT * FROM books ORDER BY RANDOM() LIMIT 1;
ABS 返回絕對值 SELECT ABS(price_difference) FROM books;
UPPER 轉換為大寫 SELECT UPPER(title) FROM books;
LOWER 轉換為小寫 SELECT LOWER(author) FROM books;
LENGTH 計算字符串字符 SELECT LENGTH(title) FROM books;
sqlite_version 返回SQLite版本 SELECT sqlite_version();

那麼,各位!這些SQLite函數就像是數據庫查詢的瑞士軍刀。它們自己可能看起來很簡單,但創造性地將它們組合起來,你會驚訝於你能夠完成的事情。記住,熟能生巧,所以不要害怕在的你自己的數據庫專案中嘗試這些函數。祝你查詢愉快!

Credits: Image by storyset