1. 程式人生 > 實用技巧 >軟體測試最常用的 SQL 命令 | 掌握基本查詢、條件查詢、聚合查詢

軟體測試最常用的 SQL 命令 | 掌握基本查詢、條件查詢、聚合查詢

1、DML核心CRUD增刪改查

縮寫全稱和對應 SQL:

* DML 資料操縱語言:Data Manipulation Language
* Create  增加:insert
* Retrieve 查詢:select
* Update 更新:update
* Delete 刪除:delete

2、SQL基本查詢

2.1 常用SQL總結

* 基本查詢:select * from table_name
* 欄位查詢:select fileds from table_name
* 條件查詢:select  * from table_name where a=1
* 排序:select * from table_name order by b desc
* 分頁:select * from table_name order limit 10 offset 0
* 去重:select distinct fileds from table_name

2.2 實操演示

現在有這樣一個公司部門人員各個資訊的資料庫,包含了如下幾個表:


departments 部門表字段:

dept_emp 僱員部門表字段:

dept_manager領導部門表字段:


employees僱員表字段:


salaries薪資表欄位:


titles崗位表字段:

  • 基本查詢-查詢departments表的所有資料
  • select * from departments;

  • 欄位查詢-查詢employees表裡所有的僱傭日期hire_date
  • select hire_date from employees;

  • 條件查詢-查詢employees表裡所有男性員工M
  • select * from employees where gender=‘M’;

  • 排序-查詢departments表裡的所有部門並按部門序號進行從小到大排序展示
  • select * from departments order by dept_no;

  • 若是想要按部門序號從大到小進行排序的話就可以使用DESC:
  • select * from departments order by dept_no desc;

  • 分頁-將departments表按部門序號進行從小到大排序後取前4個
  • select * from departments order by dept_no limit 4;

  • 再取偏移量offset為3後的前4個
  • select * from departments order by dept_no limit 4 offset 3;


去重-現在想知道titles表中的崗位頭銜有多少種,就需要對title進行去重處理

select distinct title from titles;

3、其他SQL條件查詢Where

基本條件查詢在上述已經說明:

select * from table_name where a=1

其餘條件查詢SQL:

* and or not 
* 相等: =
* 數字比較:等於= 大於> 小於< 不等<>
* LIKE通配:% _
* BETWEEN AND
* IN

實操演示:

  • LIKE通配-現在要取出employees裡所有名字為C開頭的人
  • select * from employees where first_name like ‘C%’;


再取employees裡所有名字為C開頭,第3個字母為y的人

select * from employees where first_name like ‘C_y%’;

  • BETWEEN AND-查詢employees中字母順序顯示名字在“Anneke”(包括)和“Chirstian”(包括)的人
  • select * from employees where first_name between ‘Anneke’ and ‘Chirstian’;

  • IN-現在,要從employees表中選取姓氏為 ‘Simmel’和’Peir’ 的人
  • select * from employees where last_name in (‘Simmel’,‘Peir’);

  • IN-現在,要從employees表中選取姓氏為 ‘Simmel’和’Peir’ 的人
  • select * from employees where last_name in (‘Simmel’,‘Peir’);

4、聚合查詢

4.1 常用聚合查詢SQL

* GROUP BY、 HAVING
* COUNT,MAX,MIN,SUM,AVG
* select count(gender),gender from employees group by gender;
* select count(gender),gender from employees group by gender having gender='F';

4.2 實操演示

GROUP BY、SUM-現取salaries表中各個員工emp_no的薪資總和

select emp_no,sum(salary) from salaries group by emp_no;

  • HAVING-現在接著上一步,取員工總薪資大於1000000的員工
  • select emp_no,sum(salary) from salaries group by emp_no having
    sum(salary)>1000000;

  • COUNT、AVG-取salaries表中薪資排名前100名的平均薪資(需要利用子查詢)
  • select avg(salary) from (select salary from salaries order by salary
    desc limit 100) as s;

好了,閒扯這麼多,關注我,受益你。

另外,歡迎加入軟體測試技術交流群 313782132 ~進群可領取軟體測試資料以及群內測試大牛解惑!

測試工程師職業發展路線圖

功能測試 —介面測試—自動化測試 —測試開發—測試架構師

加油吧,測試人!如果你需要提升規劃,那就行動吧,在路上總比在起點觀望的要好。事必有法,然後有成。

資源不錯就給個推薦吧~