国产探花免费观看_亚洲丰满少妇自慰呻吟_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數據庫如何實現查詢語句”這篇文章的所有內容,感謝各位的閱讀!

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乌鲁木齐市| 株洲县| 吴旗县| 尼勒克县| 永和县| 壤塘县| 红原县| 扎鲁特旗| 和静县| 枞阳县| 和平县| 六枝特区| 始兴县| 筠连县| 明星| 尉犁县| 遂宁市| 上杭县| 赤水市| 谢通门县| 平和县| 阳原县| 广南县| 通山县| 全州县| 丁青县| 莱芜市| 沈阳市| 卢龙县| 达日县| 宁安市| 夹江县| 富民县| 马龙县| 屏南县| 台州市| 沁源县| 衡东县| 隆昌县| 湄潭县| 西乌珠穆沁旗|