mysql查询_MySQL常用查询

单表查询

①查询所有     *

mysql> select * from student;

4b83590050d0c571f6495ef17dd98d7f.png

②查询选中字段记录

mysql> select s_name from student;

fe3c50041ee62961f87711ecc19444b4.png

③条件查询          where

mysql> select s_name from student where s_id<5;

cee3e4d93444274d92d59a46112a9248.png

④查询后为字段重命名   as

mysql> select s_name as 名字 from student;

bd2b1429364cbe8d7e27e56d5e4e70bf.png

⑤模糊查询     like

%匹配多个字符

mysql> select s_name as 姓名 from student where s_name like '李%';

c66b9e1b55a46b21da437530106541cb.png

_匹配一个字符

mysql> select s_name as 姓名 from student where s_name like '李_';

e35c85a088b1bc6b63c87338f655cc98.png

mysql> select s_name as 姓名 from student where s_name like '李__';

166166e54ca3554d87c927a04495ae97.png

⑥排序(默认升序)  order by  以某个字段为主进行排序

升序  asc (asc可以不写)

mysql> select * from student order by sc_id asc;

3b0deda692e89f9d36b8478972e5bf08.png

降序  desc

mysql> select * from student order by sc_id desc;

43ab6cd2b0172f5fb3329cd2bd1bfd75.png

⑦限制显示数据数量   limit

limit 只接一个数字n时表示显示前面n行

mysql> select * from student limit 5;

d6753c46afb6f567efd606d95dfa1d79.png

limit 接两个数字m,n时表示显示第m行之后的n行

mysql> select * from student limit 2,4;

f6e8de7066771da5eb6247babf5f655f.png

⑧常用聚合函数

mysql> select * from details;

d557b3ffb5ffc5ae89520bd13d233da8.png

最大值  max

mysql> select max(age) from details;

5cdfc81de66ede0061bd8b84bd7d9c7f.png

最小值 min

mysql> select min(age) from details;

7752c75ebfb9909e84e522884e2bec08.png

求和 sum

mysql> select sum(age) from details;

a5d7e6ad21a81d5d951c5a4b801e8d8f.png

平均值 avg

mysql> select avg(age) from details;

0eb2ec7c744fb9651fc6fe0c35fb050a.png

四舍五入 round

mysql> select round(avg(age)) from details;

0de77d658a87b2e70201baa29c44d59f.png

统计  count

mysql> select count(address) from details;

bdb7cbe741da196d2c285098880d63cb.png

⑨分组查询  group by    筛选条件使用having,having后接条件必须是select后存在的字段

mysql> select age,count(age) from details group by age having age>30;

以age为组统计每个age的人数最后筛选出age大于30的

2d34404117a25aa365160de71d97eb13.png

2、子查询   也叫嵌套查询

mysql> select * from details where age>(select avg(age) from details);

查询所有age大于平均年龄的信息

bc8beb04e4c8272d0e1410582e19c41a.png

3、关联查询

①内连接    inner join

无条件内连接  又称笛卡尔连接

mysql> select * from student inner join college;

b03ec14f86a51f93d3fa46677e6dfa80.png

有条件内连接  在无条件基础上on接条件

mysql> select * from student inner join college on sc_id=c_id;

249d5daa42631c48a4596cbb15d28c7e.png

②外连接

ce9eb9af1162f035769d846675ff33a4.png

左外连接    left join

以左表为基准,右表没有对应数据以null填充,多余数据去除

mysql> select * from tb1 left join tb2 on id=t_id;

829905ee080ebeb62b914cf8b04994e9.png

mysql> select * from tb2 left join tb1 on id=t_id;

190bb7276def74628b5fd6597c632472.png

右外连接   right join

以右表为基准,左表没有对应数据以null填充,多余数据去除

mysql> select * from tb1 right join tb2 on id=t_id;

18df7e8030939db0a0cd87b7d72fcec7.png

mysql> select * from tb2 right join tb1 on id=t_id;

99b40106ade2ef4313dd5122f298ca24.png

派生表必须命名 as

mysql> select * from (select * from details where age>30) as a left join student on d_id=s_id;

c78f0cd9c1fa3929e470beb50efc200a.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值