mysql单表数据去重取最新_数据库mysql~单表查询

单表查询

查询:用户根据不同的方式从数据库表中获取自己所需要的数据

是数据库操作中非常重要且非常频繁的

1、创建新库test3

2、在test3库中创建emp(雇员表)

Emp(雇员编号empno

雇员名称ename

雇员的职位job

雇员入职日期hiredate

雇员月薪sal

雇员津贴comm

雇员部门编号deptno)

3、给表插入数据

一、单表查询

1、查询所有字段

语法:select 字段名1,字段名2。。。。。。 from 表名

例如:查询雇员表中雇员姓名、编号、领导号、入职时间、薪资、奖金、部门编号

2、使用通配符*查询所有字段

语法:select * from 表名

3、查询指定字段

语法:select 字段名1,字段名2。。。。。。 from 表名

例如:查询雇员表中雇员姓名、职位、部门号、薪资

4、去重distinct的使用

语法:select distinct 字段名1,字段名2.。。。。。 from 表名

例如:查询雇员的部门号

查询雇员在哪几个部门

Distinct使用到多个字段上

例如:查询雇员部门号及职位

注意:distinct使用到多个字段上,只有多个字段的值都相同才去重!

5、查询中使用算术运算符

+ - * /(div) %(mod)

例如:查询雇员的年薪

6、给字段起别名

语法: select 字段名1 [as] 别名,字段名2.。。。。。from 表名

例如:查询雇员的年薪,别名为yearsal

注意:如果别名中有空格特殊符号 需要使用单引号括起来

例如:查询雇员的年薪,别名为yearsal&年薪 或者yearsal 年薪

二、对查询结果排序

升序 默认的排序方式 asc

降序 desc

1、在单个字段中排序

语法:select 查询内容 from 表名 order by 字段 asc|desc

例如:查询雇员信息按雇员薪资升序排序

2、在多个字段中使用排序

语法:select 查询内容 from 表名 order by 字段名1 asc|desc,字段名2 asc|desc

例如:查询雇员信息,先按照雇员薪资升序排序,如果薪资相同则按照入职日期降序排序

注意:排序可以使用别名

例如:查询雇员年薪,按照年薪降序排序

三、条件查询

条件查询:是用户按照一定条件查询,查询满足条件的部分记录

语法:select 查询内容 from 表 where 条件

1、比较运算符的使用

= > < >= <= !=

例如:查询部门号为20的雇员信息 列入

例如:查询薪资大于等于3000的雇员信息

例如:查询薪资小于3000的雇员的雇员名称、薪资、职位

注意:mysql默认的是不区分大小写,如果需要区分大小写,则可以使用binary关键字。

2、[not] between and的使用 包括边界

可以查询某区间范围的记录

例如:查询薪资在1200-3000之间的雇员信息

例如:查询薪资不在1200-3000之间的雇员姓名、薪资

3、[not] in

表示在指定集合中

语法:select 查询内容 from 表名 where 字段名 in(值1,值2,。。。。。。)

例如:查询雇员姓名是smith、scott、king的雇员信息

4、is null 或者is not null

判断某个字段是否为空

例如:查询雇员中,有津贴的雇员信息

查询雇员中,没有津贴的雇员信息

5、模糊查询

可以查询以xx结尾 包含xx 第几个是x

语法:select 查询内容 from 表名 where 字段名 like

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值