mysql 200多万_【MySQL】200万数据的优化面试题

1. 面试题

0e7556b4078a2afc487d12ec85be3fea.png

数据库表结构

CREATE TABLE `customers1` (

-- 身份证

`id` char(20) NOT NULL,

-- 姓名

`name` varchar(20) NOT NULL,

-- 城市名

`city` varchar(10) NOT NULL,

-- 性别:1(男),0(女)

`gender` tinyint(4) NOT NULL,

-- 出生日期

`birthdate` date NOT NULL,

-- 手机号

`mobile` char(11) DEFAULT NULL,

-- 照片

`photo` varchar(20) DEFAULT NULL,

-- 月薪

`monthsalary` decimal(10,2) NOT NULL,

-- 年奖金额

`yearbonus` decimal(10,0) DEFAULT NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8

b3140f6896b8078b611eeb35bd0fdef0.png

1.1  第一题:女性客户数量和平均年薪

我们先写出sql语句:select count(*),avg(monthsalary) from customers1 where gender = 0;

8a05110edeb1019a1f367542717955c8.png

这里可以简单的优化一下,因为时间有点长哦!这里需要给字段添加索引

可以试着将俩个sql语句分开来执行,看看问题出现在哪一句

302fff2c3e15aef53075de170988db8a.png

然后我们可以给monthsalary这个字段添加索引在来测试

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值