lect Departmentid,Departmentname from Department where Manager is not null
(6) 多重条件查询
多重查询就是⽤逻辑运算符NOT,AND,OR和括号将多个逻辑表达式连接起来,形成⼀个更复杂的逻辑表达式。括号优先级最⾼,NOT其
次,AND再次之,OR的优先级最低。
(1) 查询这样的男⽣,电话号码的前三位是130,他来⾃杭州或者宁波,他既不主修电⼦商务专业,也不主修信息管理专业
北二外lect * from 学⽣表 where 性别='男' and substring(移动电话,1,3)='130' and (籍贯 ='宁波'or 籍贯 ='杭州') and 专业 not in ('电⼦商务','信息管理')
1.3 对查询结果排序
如果没有指定查询结果的显⽰顺序,DBMS将按其最⽅便的顺序。⽤户也可⽤ORDER BY⼦句指定按照⼀个或者多个属性列的升序ASC或者降序DESC重新排列结果,ASC为默认值
(1)按⼯资降序显⽰员⼯的姓名和⼯资,如果⼯资相同则按姓名的升序排列
emotion
lect EmployeeName,Salary from Employee order by Salary,EmployeeName asc
注:order by⼦句中的先后顺序决定了排序过程中的优先级,例题中order by Salary,EmployeeName asc表⽰结果集先按⼯资升序(默认)排列,⼯资相同时按照名字升序排列。
可以在order by⼦句中可以采⽤三种⽅式来表⽰这个计算列
1. 这个计算列的表达式可可地盘
2. 这个计算列的顺序编号(lect⼦句中的顺序编号,从1开始)
在线取英文名字
3. 这个计算列的别名
1.4 常⽤的统计函数
财务管理专业主要学什么函数格式函数功能
COUNT([DISTINCT]*)统计元组个数purple什么意思
COUNT([DISTINCT]<;列表达式>)统计列值个数
SUM([DISTINCT]<;列表达式>)计算数值型列表达式的总和
tuoye>蹼泳
AVG([DISTINCT]<;列表达式>)计算数值型列表达式的平均值
MAX([DISTINCT]<;列表达式>)列表达式的最⼤值
MIN([DISTINCT]<;列表达式>)列表达式的最⼩值
(1)统计⼀下公司中有多少员⼯
lect count(distinct EmployeeName) as 公司员⼯总数 from Employee
(2)查询最⾼与最低⼯资清白的意思
lect min(Salary) as 最低⼯资,max(Salary) as 最⾼⼯资 from Employee
注:统计列为空值不参与统计计算,如果结合where⼦句⽤统计函数,则只有满⾜where条件的才参与统计
1.5 分组查询
con是什么意思GROUP BY⼦句可以将查询的结果集按⼀列或者多列取值相等的原则进⾏分组。含有GROUP BY⼦句的查询称为分组查询: GROUP BY <;分组列>[,...n]
(1) 查询男⼥员⼯的平均⼯资
lect Sex,Avg(Salary)as 平均⼯资 from Employee group by Sex
(2) 各部门的最⾼⼯资
lect DepartmentID,Max(Salary)as 最⾼⼯资 from Employee group by DepartmentID
(3) 在销售表ll_order表中,统计⽬前各种商品的订单总数
lect Productid as 商品编号,sum(Sellordernumber) as 商品总数 from Sell_Order group by Productid
注:GROUP BY⼦句的别名只能是FROM⼦句所列表的列名,不能是列的别名