數(shù)據(jù)準(zhǔn)備:
T_Employee為記錄員工信息的數(shù)據(jù)表,其中主鍵字段FNumber為員工工號,F(xiàn)Name為人員姓名,F(xiàn)Age為年齡,F(xiàn)Salary為員工月工資。T_Employee數(shù)據(jù)表的創(chuàng)建SQL語句:
簡單的數(shù)據(jù)檢索
SELECT * FROM T_Employee ?與
SELECT FNumber,FName,FAge,FSalary FROM T_Employee >>檢索所有的行和列
SELECT FNumber FROM T_Employee ?>>檢索某一列
SELECT FName,FAge FROM T_Employee ? >>檢索某幾列
列別名
SELECT FNumber AS Number1,FName AS Name,FAge AS Age,FSalary AS Salary FROM T_Employee 與
SELECT FNumber Number1,FName Name,FAge Age,FSalary Salary FROM T_Employee ? >>定義別名的時(shí)候“AS”不是必須的,是可以省略的
SELECT FNumber 工號,FName 姓名,FAge 年齡,FSalary 工資FROM T_Employee ? >>若數(shù)據(jù)庫系統(tǒng)支持中文也可定義中文別名
條件過濾
SELECT FName FROM T_Employee
WHERE FSalary<5000
SELECT * FROM T_Employee
WHERE FSalary<5000 OR FAge>25
數(shù)據(jù)匯總
函數(shù)名說明:這幾個聚合函數(shù)都有一個參數(shù),這個參數(shù)表示要統(tǒng)計(jì)的字段名
MAX 計(jì)算字段最大值
MIN 計(jì)算字段最小值
AVG 計(jì)算字段平均值
SUM 計(jì)算字段合計(jì)值
COUNT 統(tǒng)計(jì)數(shù)據(jù)條數(shù)
SELECT MAX(FSalary) as MAX_SALARY FROM T_Employee
WHERE FAge>25
SELECT AVG(FAge) FROM T_Employee
WHERE FSalary>3800
SELECT SUM(FSalary) FROM T_Employee
SELECT MIN(FSalary),MAX(FSalary) FROM T_Employee
SELECT COUNT(*),COUNT(FNumber) FROM T_Employee ?>>:COUNT(*)統(tǒng)計(jì)的是結(jié)果集的總條數(shù),而COUNT(FName)統(tǒng)計(jì)的則是除了結(jié)果集中FName 不為空值(也就是不等于NULL)的記錄的總條數(shù)
排序
SELECT語句允許使用ORDER BY 子句來執(zhí)行結(jié)果集的排序方式
SELECT * FROM T_Employee
ORDER BY FAge ASC ? >>升序
升序是默認(rèn)的排序方式,也就是“ASC”是可以省略的,比如下面的SQL 語句具有和上面的SQL 語句等效的執(zhí)行效果:
SELECT * FROM T_Employee
ORDER BY FAge
SELECT * FROM T_Employee
ORDER BY FAge DESC?? >>降序
ORDER BY語句允許指定多個排序列,各個列之間使用逗號隔開即可
SELECT * FROM T_Employee
ORDER BY FAge DESC,FSalary DESC >>數(shù)據(jù)庫系統(tǒng)首先按照FAge 字段的降序進(jìn)行排列,如果按照第一個排序規(guī)則無法區(qū)分兩條記錄的順序,則按照FSalary字段的降序進(jìn)行排列
對于多個排序規(guī)則,數(shù)據(jù)庫系統(tǒng)會按照優(yōu)先級進(jìn)行處理。數(shù)據(jù)庫系統(tǒng)首先按照第一個排序規(guī)則進(jìn)行排序;如果按照第一個排序規(guī)則無法區(qū)分兩條記錄的順序,則按照第二個排序規(guī)則進(jìn)行排序
ORDER BY子句完全可以與WHERE子句一起使用,唯一需要注意的就是ORDER BY子句要放到WHERE 子句之后,不能顛倒它們的順序
SELECT * FROM T_Employee
WHERE FAge>23
ORDER BY FAge DESC,FSalary DESC