mysql - SQL查询找到只会说英语的ID?
问题描述
找到所有只会说英语的 id 我无法做到这一点。第一个表是语言
+------+---------+----------+
| Id | User_id | Language |
+------+---------+----------+
| 1 | 111 | english |
| 2 | 112 | hindi |
| 3 | 113 | odia |
| 4 | 114 | english |
| 5 | 115 | english |
| 2 | 112 | english |
| 3 | 113 | english |
+------+---------+----------+
2-秒表用户
+------+------------+-----------+
| Id | FIRST_NAME | LAST_NAME |
+------+------------+-----------+
| 1 | sirjit | bit |
| 2 | jit | bi |
| 3 | ji | bi |
| 4 | i | b |
| 5 | it | ba |
| 1 | sirjit | bit |
| 2 | jit | bi |
| 4 | i | b |
| 5 | it | ba |
| 3 | ji | bi |
+------+------------+-----------+
这是我的代码:-
Select First_name,User_id
from user inner join language
on user.Id=language.Id groupby User_id
having count(language)=1;
解决方案
只说英语意味着表中的用户只有 1 行,language
并且该行在列中包含“英语” language
:
select u.id, u.First_name, u.Last_Name
from user u inner join language l
on u.Id=l.user_Id
group by u.id, u.First_name, u.Last_Name
having count(*)=1 and max(l.language)='english';
推荐阅读
- spring - 为什么 Spring @Cacheable 不将带注释的方法的结果类型传递给它的反序列化器?
- ms-access - 从文件菜单打开数据库时不显示自定义功能区
- java - 如何根据“多”方的字段正确获取 OneToMany 关系中的值?
- autocomplete - 角度/材料自动完成:选项不呈现
- apache-spark - 数据框列名未使用别名更新
- javascript - 与 Redux 反应:propType 属性错误
- r - 如何在 rvest 的 html_session 中使用 post
- python - 在 sckit-learn 中跨多个具有相同属性的列进行标签编码
- ios - 如何在单独的 swift 文件中进行领域 CRUD 操作?
- php - PHP POST 后添加到 html 的奇怪段落