国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql數據庫怎樣實現查詢語句

2024-07-24 12:33:50
字體:
來源:轉載
供稿:網友
  單表查詢
  1、普通查詢
 
  (1)命令:select * from <表名>;//通匹
 
  (2)命令:select <要查詢的字段> from <表名>;
 
  2、去重查詢(distinct)
 
  命令:select distinct <要查詢的字段> from <表名>
 
  3、排序查詢(order by)
 
  升序:asc
 
  降序:desc
 
  降序排列命令:select <要查詢的字段名> from <表名> order by <要查詢的字段名> desc
 
  不加desc一般默認為升序排列
 
  4、分組查詢(group by)
 
  命令:select <按什么分的組>, Sum(score) from <表名> group by <按什么分的組>
 
  假設現在又有一個學生成績表(result)。要求查詢一個學生的總成績。我們根據學號將他們分為了不同的組。
 
  命令:
 
  mysql>select id, Sum(score) from result group by id;
  多表查詢
  一、等值查詢
 
  現在要查詢年齡小于20歲學生的不及格成績。
 
   語句:select stu.id,score from stu,result where stu.id = result.id and age < 20 and score < 60;
 
  可見等值查詢效率太低
 
  二、連接查詢
 
  1、外連接查詢
 
  (1)左外連接查詢
 
  假設我們依舊使用的是上面的兩個表,任然查詢年齡小于20歲學生的不及格成績
 
  我們利用左外連接查詢,先將學生表中所有年齡小于20歲的學生取出來,再在成績表中將所有成績小于60的學生取出來,然后再進行配對,我們會發現效率大大得提高,只用匹配四次就可以找到。
  
  語句為:
 
  select a.id,score
  from
  (select id,age from stu where age < 20) a (過濾左表信息)
  left join
  (select id, score from result where score < 60) b (過濾右表信息)
  on a.id = b.id;
  左外連接就是左表過濾的結果必須全部存在。如果存在左表中過濾出來的數據,右表沒有匹配上,這樣的話右表就會出現NULL;
 
  (2)右外連接查詢
 
  select a.id,score
   from
   (select id,age from stu where age < 20) a (過濾左表信息)
   right join
   (select id, score from result where score < 60) b (過濾右表信息)
   on a.id = b.id;
  左外連接就是左表過濾的結果必須全部存在
 
  我們發現過濾出來的表進行的匹配只有兩條滿足條件(紅色代表條件滿足),但最后的結果卻是:
 
  左表不匹配的數據改為空,右表過濾出來的數據都要存在。
 
  (3)全外連接查詢
 
  結合了左外連接和右外連接,使得左表和右表的數據都存在。
 
  2、內連接查詢
 
  只篩選匹配結果
 
  只匹配我們需要的結果
 
  語句為:
 
  select a.id,score
   from
   (select id,age from stu where age < 20) a (過濾左表信息)
   inner join
   (select id, score from result where score < 60) b (過濾右表信息)
   on a.id = b.id;
  以上是“mysql數據庫如何實現查詢語句”這篇文章的所有內容,感謝各位的閱讀!

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 柳州市| 富源县| 平凉市| 颍上县| 汤阴县| 桑植县| 正镶白旗| 长沙市| 全椒县| 林州市| 通河县| 河曲县| 成安县| 榆社县| 蕉岭县| 太白县| 玉龙| 长寿区| 闽清县| 马公市| 石城县| 南溪县| 裕民县| 扶余县| 全州县| 常德市| 洪江市| 宁波市| 新竹县| 玉门市| 寿光市| 新密市| 东台市| 禄劝| 庆城县| 葵青区| 土默特左旗| 吴忠市| 和顺县| 鲁甸县| 隆化县|