mysql - MYSQL 按 id 打印名称,在不同表中出现次数最多
问题描述
我需要写一个查询,列出监督最多学生的工作人员的姓名。结果还应显示学生人数。查询也应该在不止一名主管有最高学生的情况下工作(例如,两名主管每人有 10 名学生,10 名学生最高)。
我读过的关于获取最常见值的每一篇关于 stackoverflow 的文章都在讨论仅按出现频率列出值,然后使用 LIMIT 仅显示最常见的值。但是,我需要以这样的方式进行操作,即它会显示最高的一个和任何其他与之相等的,并且对于任何长度的结果列表,它必须是动态的。
有 2 个单独的表,如下所示,所以我认为查询类似于
学生表
+------------------+----------+
| S_FIRST | F_ID |
+------------------+----------+
| Tammy | 1 |
| jorge | 1 |
| john | 1 |
| mike | 2 |
| lisa | 4 |
| ni | 3 |
教师表
+------------------+----------+
| F_FIRST | F_ID |
+------------------+----------+
| Teresa | 1 |
| mark | 2 |
| colin | 3 |
| jonnel | 4 |
| james | 5 |
SELECT F_FIRST, COUNT(student.F_ID) AS value_occurrence
from teacher, student group by F_FIRST ORDER BY value_occurrence DESC;
但这只是给出了以下输出。
F_FIRST VALUE_OCCURRENCE
--------------- ----------------
Jonnel 6
Mark 6
James 6
Colin 6
Teresa 6
预期的输出是
F_FIRST VALUE_OCCURRENCE
--------------- ----------------
Teresa 3
解决方案
推荐阅读
- vba - Word-VBA-为什么我在内容控件中输入值后占位符文本会发生变化?
- c++ - 谁能向我解释默认参数值如何在 C++ 的递归函数中工作?
- javascript - 将 C# 位运算转换为 Javascript
- rust - 让 GtkComboBox 条目为 Pixbuf 或 String
- python - 为什么 os.system('cls') 不清除最近的输出?
- swift - 如何以高性能的方式将可变数组用作字典值?
- javascript - 返回的承诺链上的回调在上述承诺链中的回调之前运行
- mysql - 如何订购我的 mysql 查询以双重标准?
- kubernetes - 如何使用负载均衡器(或直接)从外部访问 pod?
- docusignapi - 有没有办法在 Admin Docusign Sandbox API 上包含禁用多个字段中的数据复制的选项