mysql之資料查詢SELECT * FROM students; SELECT * FROM classes;
阿新 • • 發佈:2020-11-14
基礎查詢
SELECT * FROM students; SELECT * FROM classes;
|
|
條件查詢
select * from students where score >= 80;
or 或關係 and 與關係 not 非關係
要組合三個或者更多的條件,就需要用小括號()
表示如何進行條件運算。
select * from students where score >= 80 and score <=90;
投影查詢(即查詢表中的某幾列)
SELECT id,name,gender,score FROM students;
排序:查詢時按表中的某一項作升序或降序排列
按class_id升序
SELECT * FROM students ORDER BY class_id;
按class_id降序
SELECT * FROM students ORDER BY class_id desc ;
分頁查詢
SELECT * FROM students limit 3 offset 3;
limit 3 每次獲取的資料最多為3條
offset 3 獲取從第4條開始的資料包括第4條
聚合查詢
統計人數
SELECT COUNT(*) '總計' FROM students
COUNT(*) '總計' :總計為COUT(*)的別名
求和
SELECT SUM(score) '二班總分' FROM students where class_id = 2;
平均值
SELECT CEILING(avg(score)) '二班平均分' FROM students where class_id = 2;
CEILING :無論小數位是幾都向上進一位
FLOOR :無論小數位是幾都向下退一位
最大值
SELECT max(score) '第一名' FROM students ;
最小值
SELECT min(score) '最後一名' FROM students ;
多表查詢
select * from students , classes;
注:沒什麼用
連線查詢
內連線
SELECT * FROM students INNER JOIN classes ON students .class_id = classes .id;
那麼INNER JOIN是選出兩張表都存在的記錄:
左外連線
SELECT students.id,class_id,name FROM students LEFT OUTER JOIN classes ON students .class_id = classes .id;
LEFT OUTER JOIN是選出左表存在的記錄:
右外連線
SELECT students.id,class_id,name FROM students RIGHT OUTER JOIN classes ON students .class_id = classes .id;
RIGHT OUTER JOIN是選出右表存在的記錄:
FULL OUTER JOIN則是選出左右表都存在的記錄: