mysql - 如何从多个表中找出不匹配 SQL 中特定条件的结果?
问题描述
我有 3 张桌子:
个人表存储以 ID 作为主键的基本个人信息 这个人可以有关系(父亲/母亲等),这些关系保存在关系表中,但是他们的用户是在个人表中创建的(例如 ID = 2,3 个人表),这样我们知道2,3与用户1(携带)有关。我们还有第三个表 - 地址,它存储用户 ID 明智的地址。(对于用户和他的相关人员,他们也是用户)我想在 SQL 中找出用户或他的相关用户的地址是否存在. 如何做到这一点?
解决方案
询问:
select p.id,p.username,(case when a.userid is null then 'No' else 'Yes'end) IsAddressAvailable
from Person p
left join Address a on p.id=a.Userid
输出:
ID | 用户名 | 是地址可用 |
---|---|---|
1 | 携带 | 是的 |
2 | 携带父亲 | 不 |
3 | 携带妈妈 | 是的 |
db<小提琴在这里
推荐阅读
- python - 如何在 Python 中使文本适合边界框
- json - 如何从 JSON 数据中提取特定字段
- java - 如何根据 MongoRepository JAVA SpringBoot 中子映射的键获取父对象
- c# - AspNetCore Blazor 基于路由的本地化
- powershell - Invoke-Command:如果在从列表中向计算机发送命令时发生异常,则继续
- laravel - Docker - 如果使用卷,容器内的内容会消失
- javascript - 比 setState 更快地声明变量
- amazon-web-services - 为什么 AWS 安全组不允许 sg-ID 的入站 http 流量
- apache-spark - 为什么 spark sketch BloomFilter 速度慢并且误报率高
- node.js - 更新 nuxt.config.js 时开发服务器崩溃