Mysql基础(四)

结构化查询语言 SQL

结构化查询语言英文全称是 Structured Query Language 英文简称就是 SQL。它是一种应用最为广泛的关系型数据库语言,该语言定了一操作关系型数据库的标准语法,几乎所有的关系型数据库管理系统都支持 SQL 语言.

在整个 SQL 语言中,又分为三大板块,分别是 DDL、DML 和 DCL
在这里插入图片描述

在查询语言中需要遵守一定的语法顺序或叫关键字顺序
Select 字段列表,如果要查询所有字段用*即可

From 表名或数据源

[where 条件表达式] 可以抽象理解成数据的定位

[group by 字段列表] 在题目中出现每个,各个或不同的 xxx 时,一般会用到

[having 条件表达式] 对分组后的数据进行筛选,having 后面可以跟字段名或函数,不能和 where 调换位置,一般只和 group by 一起出现(一般情况下,题目条件中需要函数出现的时候大概率会用到 groupby + having 组合)

[order by 字段列表 [asc | desc]] 主要是对数值类型的列来进行排序显示

[limit m,n] 截取显示从第 m+1 开始个,连续显示 n 个

Select ---- 查询的意思

条件表达式 ---- 比较, 逻辑

单表查询

  1. 查询员工表中的所有信息;
    Select * from 员工表;

  2. 查询员工表中的员工姓名和工资;
    Select 姓名列,工资列 from 员工表;

  3. 查询工号是 101 的员工姓名和岗位;
    Select 姓名列,岗位列 from 员工表 where 工号 = 101;

  4. 查询工资大于 5000 的员工姓名和对应工资;
    Select 姓名列,工资列 from 员工表 where 工资 > 5000;

  5. 查询年龄小于 24 且大于 18 的员工姓名和岗位;
    Select 姓名列,岗位列 from 员工表 where 年龄 < 24 and 年龄 >

  6. 查询岗位是销售或经理的员工姓名和工资
    Select 姓名列,工资列 from 员工表 where 岗位 = 销售 or 岗位= 经理;

  7. 查询不是销售部的员工姓名和部门名称
    Select 姓名列,部门名称列 from 员工表 where 部门名称 != ‘销售部’;

  8. 查询不是研发部也不是产品部的员工姓名和工资
    Select 姓名列,工资列 from 员工表 where 部门名称 not in (‘研发部’ , ’产品部’);

  9. 查询每个岗位有多少人
    Select count(主键约束列或非空约束列) from 员工表 group by 岗位;

  10. 查询不同部门不同岗位的平均工资
    Select avg(工资) from 员工表 group by 部门列,岗位列;

  11. 查询每个部门的平均工资,结果显示平均工资高于 2000 的部门编号和平均工资;
    Select 部 门 编 号 ,avg( 工 资 ) from 员 工 表 group by 部 门 编 号 having avg(工资) > 2000;

  12. 查询员工的姓名和工资,按照工资升序来排序
    Select 姓名列,工资列 from 员工表 order by 工资列 [asc];

  13. 查询员工的姓名和工资,按照工资降序来排序
    Select 姓名列,工资列 from 员工表 order by 工资列 desc;

  14. 查询员工的姓名和工资,按照工资升序排序,显示前两个.
    Select 姓名列,工资列 from 员工表 order by 工资列 [asc] limit[0,]2;

  15. 查询员工的姓名和工资,显示工资最高的哪个人
    Select 姓名列,工资列 from 员工表 order by 工资列 desc limit[0,]1;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值