sql - 从其他数据库中按计数 id 获取排序项目
问题描述
我有英雄的主表,[id,name],我有所有英雄技能的第二张表[hero_id,skill_id(每个英雄唯一),name(技能名称)]。
我想从按技能编号排序的主表中获取所有数据。
例子:
主要的
[0, Rickimary]
[1, Axega],
[2, Morti]
第二
[0, 0, Invisibie]
[0, 1, Smoke],
[0, 2, Jump],
[1, 0, Big hit],
[2, 0, Slice],
[2, 1, Froze]
并将结果作为
[0, Rickimary],
[2, Marti],
[1, Axage]
或下降
解决方案
使用join
和group by
:
select m.name, count(s.skill_id)
from main m left join
second s
on m.id = s.hero_id
group by m.id, m.name
order by count(s.skill_id) desc;
推荐阅读
- laravel-7 - 在 Laravel 中获取函数结果并添加到另一个控制器
- python - 带有值内键的字典的在线输出
- c# - 跨项目活动
- ios - 同一列表中的多个 ForEach 与具有一个 ForEach 的多个列表
- python-3.x - 带有文件和数据的 Django DRF Post 在 Postman 中工作,而不是 Python。没有临时上传文件
- php - 如何创建包含 HTML 和 PHP 代码混合的自定义字段并将其附加到用户
- image - 谷歌搜索 API searchType = image
- node.js - NodeJS 使用 GQL 创建和 POST 文件
- javascript - 如何从 msearch 返回一个数组命中
- optimization - 模型预测控制框架中轨迹优化切换输入值能力的约束