【SQL實用筆記-1】初學者必學的 10 個實用範例

在這篇文章中,我們將介紹 SQL 的基本操作及一些進階應用,包括條件查詢、排序和模糊匹配,幫助初學者快速掌握 SQL 的核心技能。如果你想在資料庫管理中更有效率,這篇教學絕對值得一讀!


1. 查詢特定分數區間的學生

當我們需要查詢特定成績範圍的學生時,可以使用 WHERE 條件篩選數據。例如,篩選成績在 80 至 90 分的學生:

SELECT name, class, grade
FROM school
WHERE grade >= 80 AND grade < 90;

1-1 使用 BETWEEN 語法簡化範圍查詢

BETWEEN 是更直觀的範圍查詢語法,等效於上述條件:

SELECT name, class, grade
FROM school
WHERE grade BETWEEN 80 AND 90;

1-2 使用括號組合條件查詢

當需要組合多條件時,AND 的優先級比 OR 高。可以透過括號清晰地定義執行順序,例如:

SELECT name, class, grade
FROM school
WHERE grade BETWEEN 80 AND 90 AND (class = '104' OR class = '102');

1-3 實用IN 簡化多個or的實用
Select name, class, grade
from school
where grade between 80 and 90 and (class in (‘104′,’102’));

2. 排除特定班級並按成績降序排列

如果需要排除某一班級的數據,並根據成績從高到低排序,可以使用以下查詢語句:

SELECT name, class, grade
FROM school
WHERE class <> '104'
ORDER BY grade DESC;

此語法中,<> 表示「不等於」,ORDER BY 則用於對查詢結果進行排序。


3. 查詢名字以特定字符開頭的學生

使用 LIKE 關鍵字可以進行模糊匹配,篩選出符合特定模式的數據。例如,查詢名字以「Cheng」開頭的學生:

SELECT name, class, grade
FROM school
WHERE name LIKE 'Cheng%';

在這裡,% 表示任意數量的字符。


4. 查詢名字為特定長度的學生

_ 是另一個模糊匹配符號,可用於匹配單個字符。例如,查詢名字為兩個字,且以「Cheng」開頭的學生:

SELECT name, class, grade
FROM school
WHERE name LIKE 'Cheng_';


  1. 查詢平均成績,sum, min, max, count
    Select avg(grade),sum(grade), min(grade), max(grade), count(grade)
    from students;

5-1 重新命名title
Select avg(grade) as 平均成績, max(grade) as 最高分
from students;


5-2 保留小數點位數-round語法
Select Round(avg(Grade),1) as 平均成績
from students;

5-3 各班級的成績
Select Round(avg(Grade),1) as AverageGrade
from students
group by class;


5-4 各班級成績 由高到低排序
Select Round(ave(grade),1) as AverageGrade
from students
group by class DESC;

結語

透過以上實用範例,您可以快速掌握 SQL 的基本操作和進階應用。這些技巧不僅適用於資料庫查詢,也能幫助您在實際工作中提升效率。如果您覺得這篇文章對您有幫助,請記得分享給更多需要學習 SQL 的朋友!

根據PAPYA教室所指導的範例所整理的筆記

Related Post

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *