一、查詢函數
-》爲表起別名asspa
-》查詢所有列、指定列排序
爲列起別名as字符串
-》查詢前n部分數據:it
top n 列名:表示查看前n行io
top n percent 列名:表示查看前百分之幾的數據select
-》排序:order by 列名1 asc|desc,列名1 asc|desc...nio
-》消除重複行:distinct統計
-》條件查詢:寫在where後面總結
對行進行篩選,返回bool類型的值,若是某行中的列數據知足條件,則加入結果集,不然不出如今結果集中
比較運算符:=,>,>=,<,<=,!=或<>
between ... and ...表示在一個連續的範圍內
in表示在一個非連續的範圍內
邏輯運算符:and,or,not
模糊查詢:用於處理字符串類型的值,運算符包括:like % _ [] ^
%與_寫在[]中表示自己的含義
在[]表示一個連續的範圍能夠使用-
^寫在[]內部的開頭,表示不使用內部的任何字符
null的判斷:使用is null或is not null,與其它值計算時返回null,排序時null被認爲是最小
優先級:小括號,not,比較運算符,邏輯運算符
-》鏈接:join 表名 on 關聯條件
內鏈接:inner join,兩表中徹底匹配的數據
左外鏈接:left outer join,兩表中徹底匹配的數據,左表中特有的數據
右外鏈接:right outer join,兩表中徹底匹配的數據,右表中特有的數據
徹底外鏈接:full outer join,兩表中徹底匹配的數據,左表中特有的數據,右表中特有的數據
-》聚合函數:對行數據進行合併
sum,avg,count,max,min
通常是對數字類型的列進行操做
一條查詢中能夠同時寫多個聚合函數,可是不能與普通列混寫
聚合中的null問題:不參與計算
-》開窗函數:over()
將統計出來的數據分佈到原表的每一行中
結合聚合函數、排名函數使用
-》分組:group by 列名1,列名2...
聚合函數通常結合分組使用,進行分組內的數據進行統計
根據指定列進行分組
分組後條件篩選:having ...
-》總結:完整的select語句及執行順序
select distinct top n *
from t1 join t2 on ... join t3 on ...
where ....
group by ... having ...
order by ...
二、聯合查詢
-》將多個查詢的結果集合併成一個結果集
-》聯合要求:
結果集列數要一致
對應列的類型要一致
-》union、union all、except、intersect
-》用處:在查詢結果處顯示彙總