本文所用數據庫爲db_Test,數據表爲Employeehtml
語句語法簡單概括爲:數據庫
SELECT select_list [INTO new_table_name] [FROM table_source] [WHERE search_condition] [GROUP BY group_by_expression] express
[HAVING search_condition] [ORDER BY order_expression [ASC | DESC]]函數
備註:紅色字體爲自定義參數,根據實際查詢填寫。字體
WITH子句用於指定臨時命名的公用表達式,在單條語句(SELECT、INSERT、UPDATE、DELETE)的語句執行範圍內定義;3d
例:建立一個公用表達式,計算Employee表中每年齡的員工數量;htm
例: 在Employee中查詢全部女員工的姓名、年齡信息,並另起列名;blog
另起列名有三種方法:排序
1.列名 as 新列名it
2.列名 =新列名
3.列名 新列名
PS:我我的比較愛用as
建立新表,並將查詢結果行插入該表中。
例:用into新建一張表,名爲tb_EmpAge,包含Name和Age兩列
Select Name,Age into tb_EmpAge from Employee
因爲where子句的複雜性,下面按照參數的前後順序進行介紹;
NOT:取反;
AND:邏輯與;
OR:邏輯或;
例:利用AND查詢Employee表中的年齡小於30歲的全部女員工 的信息;
例;利用NOT查詢年齡不小於30歲的全部女員工的信息
例:利用組合查詢年齡不大於40的男員工信息或年齡大於30的女員工信息;
此運算符使用簡單,在此再也不佔用篇幅了。
用於模糊查詢,通配符有%、_、[ ]、[^]
%:後面能夠跟零個或多個字符
_:匹配任意單個字符
[ ]:查詢必定範圍內的單個字符,包括兩端數據
[^]:表示不在必定範圍內的單個字符,包括兩端數據
例:查詢姓熊的員工而且名字只有兩個字的員工信息
例:查詢年齡在23-27週歲的員工信息
between...and 和not between and
例:查詢年齡在23-27週歲的女員工信息
在where子句中,須要用is (not) null 判斷空值,不能使用=判斷空值
用來指定列表搜索的條件;
例:查詢ID爲1,2,3,的員工信息
三者都做用於比較運算符和子查詢之間,通常和嵌套查詢一塊兒用,Some和any等效
具體做用請看例子。all是大於最大者,any是小於最小者
例:查詢年齡大於熊大和熊二的員工信息
做用於子查詢,指定行是否存在
用於對錶進行分組
指定組或聚合的搜索條件,只能與select一塊兒使用。
例:查詢相同年齡段大於2人的員工信息
在select返回的結果中排序;只有在指定了Top狀況下,才能在視圖、內聯函數、派生表和子查詢中起做用。
ORDER
例:將表中人員按照年齡大小降序排列
說明:order by 默認是升序排列
生成合計,出如今結果列
例:計算表中員工的平均年齡
從select結果中去掉重複記錄
例;去掉重複年齡
例:從select結果中顯示前4行
轉載自:https://www.cnblogs.com/xhkongblog/p/7765514.html