#去重操作,不重复显示
SELECT DISTINCT ename FROM emp

#查询年龄大于20
SELECT * FROM emp WHERE age>20

#模糊查询，查询所有名字开头为J的信息
#%代表通配符，匹配任意内容
SELECT * FROM emp WHERE ename LIKE 'j%'

#模糊查询，查询所有名字结尾为k的信息
SELECT * FROM emp WHERE ename LIKE '%k'
#模糊查询，查询所有名字中包含a的信息
SELECT * FROM emp WHERE ename LIKE '%a%'

#模糊查询，查询所有名字开头为J，后面包含三个字母的信息
#_代表站位符，匹配任意内容
SELECT * FROM emp WHERE ename LIKE 'j___'

#排序操作
##查询emp表所有记录，根据eid进行排序ASC升序,DESC降序
SELECT * FROM emp ORDER BY eid DESC
#查询区间范围的值
#查询emp表年龄30-50范围
SELECT * FROM emp WHERE age>=30 AND age<=50
SELECT * FROM emp WHERE age BETWEEN 30 AND 50
#查询emp表年龄是20 40 60
SELECT * FROM emp WHERE age IN(20,40,60)

#分页查询
#关键字limit,只能用在mysql中，不是标准sql
#limit后面两个参数，第一个参数  查询数据开始位置；第二个参数  每页显示多少条记录
 SELECT * FROM emp LIMIT 0,3
  SELECT * FROM emp LIMIT 3,3
  
 #分组查询GROUP BY
 #查询每个edid有多少个人
 SELECT COUNT(*) AS num,edid  FROM emp GROUP BY edid
 #GROUP BY 加上having操作
 ##统计每个部门的最高工资#一对多关系
 #编写emp和salary内连接查询
 ##得到最高工资max
 ##部门分组group by
 SELECT MAX(salarystid) ,emp.edid
 FROM emp,salary 
 WHERE emp.`stid`=salary.`stid`
 GROUP BY emp.`edid`
 
 # 获取最高工资大于5000的部门,having后可以加函数where后不能
 #在分组之上做筛选
SELECT MAX(salarystand),emp.edid
FROM emp,salary
WHERE emp.stid=salary.stid   
GROUP BY emp.edid
HAVING MAX(salarystand)>5000











