首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Mysql实例 表设计

Mysql实例 表设计

原创
作者头像
陈不成i
修改2021-06-17 14:15:41
修改2021-06-17 14:15:41
1.6K0
举报
文章被收录于专栏:ops技术分享ops技术分享

一.介绍

有一个公司叫月亮集团,他们旗下有很多网站每天都有很多人访问。于是成立了广告部,让其他公司来在他们的页面上放广告,从而收费。

二.设计表格

公司表

公司名称

公司编号(自增主键)

电话号码

A

1001

xx

B

1002

xx

广告表

广告编号

有该广告的公司的编号(自增主键)

广告收费/点击一次

1

1001

2

2

1001

3

3

1002

2

点击表

广告编号

该广告发送给浏览者的日期

1

101101

2

101102

1

101323

3

111232

三.查询

查都有哪些公司

直接查询公司表的 公司名称 字段 select 公司名称 from 公司表;

结果为A,B公司投放了广告

查A公司都放了哪些广告

先到公司表,将公司名称=A的编号提取出来,然后将公司编号作为条件去广告表里找广告编号。 select 广告编号 from 广告表 where 公司编号 = (select 公司编号 from 公司表 where 公司名称=A);

结果为A公司投放了编号为1,2的广告

查A公司10月份该交多少广告费

A公司10月份广告费=1广告次数 X 1广告的价格+2广告次数 X 2广告价格

先查出A公司放了哪些广告,编号多少,这个上面已经出结果了,得到编号1,2

然后根据编号查出1,2广告每次点击多少钱 select 广告费 from 广告表 where 广告编号=1; select 广告费 from 广告表 where 广告编号=2;

根据广告编号查出10月份的1广告点击有多少次,日期为秒格式,所以找出10-11月之间的即可匹配。 select 次数 from 点击表 where 编号=1 and 浏览日期 between 100000 and 199999; select 次数 from 点击表 where 编号=2 and 浏览日期 between 100000 and 199999;

最后做个计算即可

四.分析

表结构设置

目前有3张表,基本满足业务需求,但未来查询更多,需要重新设计主键位置,表结构。

当数据庞大,首当其冲的是点击表,可能一天有几万次记录写入,这张表将变得庞大,可以考虑将表根据月份进行拆分。

sql语句

刚才查询A公司需要交费多少,比较繁琐,需要操作多次,可以将sql语句进行优化,查看消耗时间是多少,找出最优的语句和方法。

其它功能

当前表除了基本的查询,还可以进行数据分析。

可以通过点击表,分析出当前这月哪个广告受欢迎,次数最多。这种可以去和公司商议,建议投放公司将这类广告放到更显眼位置,但费用增加。

可以通过广告表,分析出当前A公司投放多少广告,如果很多说明资金充足,可以商议价格,比如降低广告费,但要求对方投入更多广告。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.介绍
  • 二.设计表格
  • 三.查询
    • 查都有哪些公司
    • 查A公司都放了哪些广告
    • 查A公司10月份该交多少广告费
  • 四.分析
    • 表结构设置
    • sql语句
    • 其它功能
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档