数据库单表查询

 本博客主要是记录一些常用的操作,讲解过程比较简陋。

目录

 本博客主要是记录一些常用的操作,讲解过程比较简陋。

1.查询一个表内的所有数据

2.查询某张表的某个字段

3.带条件查询

4.聚合函数

5.模糊查询

6.查询时按顺序返回

7.分组查询

8.limit限制查询

9.distinct条件查询


1.查询一个表内的所有数据

select * from gays;

查询gays这张表的所有字段的所有内容。

2.查询某张表的某个字段

select name from gays;

查询gays这张表的name字段的所有内容。

3.带条件查询

select * from gays where id = 3;

查询gays这张表的id等于3的所有字段的信息。

返回的是一条数据。

select * from gays where id in(1,2);
select * from gays where id between 1 and 3;

between and 是闭区间。

还有一些特殊的,比如说要查null,就不能等于null,而是要使用关键字is。

select * from gays where name is null;

where的写法很灵活。

4.聚合函数

先看一下表的结构

 求和:求语文字段的所有分数总和。

select sum(chinese) from score;

求平均:求语文字段的所有信息的平均值。

select avg(chinese) from score;

求最大:max        求最小:min        统计有多少数据:count(*)

5.模糊查询

select * from where name like 'z%';

查询结果返回name第一个字母是z的。其中百分号代表多个不确定字符。

select * from where name like 'z_h';

查询结果返回name第一个字母是z最后一个字母是h的。其中下划线代表一个不确定字符。

6.查询时按顺序返回

按升序,降序返回

select * from gays order by tel asc;

在gays这张表里按照tel的升序排序;按照降序就是把asc改成desc。

7.分组查询

先看一下表的结构: 

 分别返回男,女的平均年龄。

select avg(age) as 'average age', gender as 'gender' from info group by gender;

返回结果: 

 group by 是说按照什么去分,按照gender区划分,gender里面只有两条数据,所以最后返回两条数据,返回的这两条数据每一条数据都有两个字段,因为select 的时候选择了2个字段。。

****如果使用的是group by 建议 第一个是聚合函数,另一个是查询的字段(按哪一个字段去查)。

也可以与聚合函数搭配使用

select group_concat(age), gender from info group by gender;

 group_concat是聚合函数,经常与group by搭配使用。

上面返回的是一个临时的,实际上不存在的,虚拟的,只有age,gender两个字段的临时表;如果从这张临时表里面做二次筛查,就不能用where了,where是一条一条的遍历,歧义且不符合语法,可以用having加条件来代替。having中的条件要和as别名符合。

8.limit限制查询

select * from info limit 0, 3;

limit: 第一个参数是从第几条数据开始查询,第二个参数是查询几条数据,如果第一个参数不写,默认是从第零条数据开始查询。

limit查询返回的是一个区间段,通常与order by联合使用。

比如说我要查询年龄最大的三个人。

select * from info order by age desc limit 3;

9.distinct条件查询

  先看一下表的内容:

如果我们想查询有哪些地址,如果用select address from gays,那个相同的地址都会返回,这时候可以用distinct,相同的返回一个就可以了。

select distinct address from gays;

 运行结果:

 通常情况下与聚合函数count联合使用。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值