Mysql SQL:如何使用另一个表中的信息选择内容

Mysql SQL:如何使用另一个表中的信息选择内容,mysql,sql,select,Mysql,Sql,Select,我有两个SQL表 在第一个表中,每一行都有一个得分和一个类别id字段(与问题无关的其他字段) 第二个表(categories)列出了第一个表中的元素可以属于的所有可能的类别 我想执行以下SQL请求: SELECT category_name, ( ??? ) AS category_score FROM categories ORDER BY category_score DESC 其中?=表1中属于该类别的所有元素的得分之和您可以加入并分组: SELECT category_name,

我有两个SQL表

在第一个表中,每一行都有一个
得分
和一个
类别id
字段(与问题无关的其他字段)

第二个表(
categories
)列出了第一个表中的元素可以属于的所有可能的类别

我想执行以下SQL请求:

SELECT category_name, ( ??? ) AS category_score
FROM categories
ORDER BY category_score DESC

其中
=
表1中属于该类别的所有元素的得分之和
您可以
加入
分组:

SELECT   category_name, SUM(score) AS category_score
FROM     categories c
JOIN     element e ON c.category_id = e.category_id
GROUP BY category_name 
ORDER BY 2 DESC

谢谢你的回答,我不知道分组方式,我会调查的。只是一个简单的问题,我没有得到2 DESC的
订单
部分?例如,
groupby category\u score DESC
为什么不呢?@Malimalo
groupby
子句将结果分解为多个组,这样聚合函数(如
sum
)就可以独立地应用于
category\u name
的每个唯一值。完成后,仍然需要对结果进行排序,这是通过
orderby
子句完成的。感谢您的回答,实际上我没有得到
orderby
中的
2
。但我做了我应该做的事,在谷歌上搜索了一下,很快就得到了我的答案(这意味着,
按select行的第二个元素排序)。谢谢你的帮助;)