中科软面试题-千万级数据测试

    技术2022-07-11  152

    (一)有一张表,3个字段,ID、姓名、生日,此表有1000万行数据,如表一所示:请问如何统计分析出所有年龄的 具体人数数据,如表二所示。要求计算速度要快,5秒钟内要完成数据的计算。

    模拟生成千万条数据,下载地址,分享码:6xry表结构,表内容如下 sql语句及其执行时间(4.9s)

    SELECT TIMESTAMPDIFF(YEAR, birth, CURDATE()) as 年龄, COUNT(*) as 人数 FROM employee GROUP BY 年龄

    (二)数据库设计,请按照如下需求描述进行数据设计,设计出所有的表结构,包含完整的字段以及表与表之间的外键关系。 需求:如下图所示的组织机构,该公司主要经营冰激凌,全国10000直营门店,主营业务是冰激凌销售。请完 成该公司冰激凌销售的系统的数据库设计,要求能够查询各个大区所有门店的销售额,能够查询组织机构树某个节 点的下属所有门店的销售额;并写出相应的查询SQL语句。

    表结构

    大区表 地区表 商品表

    sql -- 计算出大区的总额 SELECT zname,SUM(shopPrice) FROM ( SELECT z. NAME zname, a. NAME aname, a.id aid FROM zone z LEFT JOIN area AS a ON z.id = a.zoneId ) t LEFT JOIN shop s ON t.aid = s.areaId WHERE zname='华南大区' -- 计算出大区的总额 SELECT aname,SUM(shopPrice) FROM ( SELECT z. NAME zname, a. NAME aname, a.id aid FROM zone z LEFT JOIN area AS a ON z.id = a.zoneId ) t LEFT JOIN shop s ON t.aid = s.areaId WHERE aname='广州
    Processed: 0.008, SQL: 9