MySQL连接查询综合应用

连接查询综合应用

综合运用聚合函数、连接查询、分组查询完成许多很复杂的查询

看看以下的案例吧^ .^ ↓↓↓

案例用到的表:线路表(line)、司机表(driver)、车站表(line_station)、车辆表(vehicle)

案例1.1:统计每一家公交公司所属线路的站点总数
代码如下:

-- 1.1统计每一家公交公司所属线路的站点总数
SELECT l.company '公司', COUNT(*) '总站数'
FROM line l , line_station ls
WHERE l.lineNo = ls.lineNo
GROUP BY l.company

运行结果如下↓
在这里插入图片描述
我们能看到每个公司的总站数都被查询出来啦~!


案例1.2:计算经过站点“解放大道古田四路”的公交线路的数量以及营运车辆数量
代码如下:

-- 1.2计算经过站点“解放大道古田四路”的公交线路的数量以及营运车辆数量
SELECT l.lineNo '线路号' , SUM(number) '车辆数量'
FROM line l , line_station ls
WHERE l.lineNo = ls.lineNo
AND station = '解放大道古田四路' 

运行结果如下↓
在这里插入图片描述
可以看到表中符合经过站点“解放大道古田四路”的公交线路只有一条记录呢!


案例1.3:计算每条公交线路的司机人数,并显示司机人数大于 3 的分组信息,按司机人数逆序显示
代码如下:

-- 1.3计算每条公交线路的司机人数,并显示司机人数大于 3 的分组信息,按司机人数逆序显示;
SELECT l.lineNo '线路号' ,COUNT(*) '司机人数'
FROM line l , vehicle v , driver d
WHERE d.driverID = v.driverID
AND v.lineID = l.lineID
GROUP BY l.lineNo HAVING COUNT(*) > 3
ORDER BY COUNT(*) DESC

在这里插入图片描述
看到这里用了许多语句去查询用条件筛选记录,似乎有点复杂呢~


总结:

1.连接查询综合应用要熟练运用SELECT语句以及WHERE、GROUP BY 、 ORDER BY语句的使用,组合一起使用解决问题。
2.完成查询的解决思路不只一种需要多多练习就能够很好的去使用查询啦~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL百万级数据查询优化是提高数据库性能的重要步骤。下面是一些建议: 1. 索引优化:通过合理的索引设计,能够加快查询速度。对于经常作为查询条件的列,添加索引能够提高查询效率。 2. 分页查询优化:对于大数据量的查询结果,可以使用分页查询来避免一次性加载所有数据。通过设置合理的分页大小,可以加快查询速度。 3. 使用合适的存储引擎:MySQL支持多种存储引擎,如InnoDB、MyISAM等。根据实际应用需求选择合适的存储引擎可以提高查询性能。 4. 查询语句优化:通过合理的查询语句设计,能够减少不必要的数据查询和计算,加快查询速度。例如,避免使用SELECT *查询所有列,只查询需要的列。 5. 分区表:对于大数据量的表,可以考虑使用分区表来提高查询性能。通过将表按照某个列进行分区,可以将数据分散存储在多个物理文件中,提高查询效率。 6. 调整内存和缓存配置:根据实际硬件情况和数据库负载,合理配置MySQL的内存和缓存参数,如缓存大小、连接池大小等,以提高数据库性能。 7. 查询计划优化:通过对查询执行计划进行分析,可以找出查询中存在的性能瓶颈,并对其进行优化。例如,添加合适的索引、调整查询语句等。 8. 数据库分片:对于超大规模的数据量,可以考虑将数据库分片存储在多个服务器上,通过分片查询来提高查询性能。 总之,针对百万级数据查询优化,需要综合考虑索引设计、分页查询、存储引擎选择、查询语句优化、分区表、内存和缓存配置、查询计划优化以及数据库分片等多个方面。不同的应用场景可能有不同的优化策略,需要结合实际情况进行调整。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值