sql - SQL 分层数据
问题描述
我在 sql server 中有以下要求,我需要报告 catg "FIN" 的孩子的数据,这些孩子是父母的直系后代。
输入
parent,child,parent_catg,child_catg
A A FIN FIN
A B FIN FIN
B B FIN FIN
A C FIN FIN
B C FIN FIN
C C FIN FIN
B D FIN FIN
C D FIN FIN
E E OTH OTH
E F OTH OTH
A G FIN FIN
B G FIN FIN
A H FIN FIN
P P FIN FIN
P Q FIN FIN
输出
Eligible children for reporting
B
H
Q
有人可以帮忙吗?
解决方案
您可以使用 group by 和 count()。IE:
select child
from myTable
where child_catg = 'FIN' and parent <> child
group by child
having count(*) = 1;
推荐阅读
- firebase - 页面重新加载时的 Nuxtjs、VUEX 和 Firebase 身份验证
- linux - 通过 URL 访问远程机器 [本地网络] 服务器 [Linux] 上的文件
- java - 如何限制正则表达式中的负前瞻
- php - PHP函数获取第二个函数返回的数组
- python - 如何将 sklearn.metrics.classification_report 的输出作为字典?
- ios - 输入在 IOS 模拟器上的 Ionic 应用程序中不起作用
- ios - 可变参数方法包装器 ios Objective-c
- android - 对象实例作为 JobIntentService 的参数
- python - 从 Lambda 向 Lex 发送组(多条)消息
- javascript - 当源为 PHP 时更改 JavaScript 数组的格式