首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >同一表Sql - PostgreSql上的Group by和Join

同一表Sql - PostgreSql上的Group by和Join
EN

Stack Overflow用户
提问于 2020-06-05 16:15:35
回答 2查看 31关注 0票数 0

我有一张这样的桌子:

代码语言:javascript
复制
Id | Name       | ParentId | Hierarchy
1  | California | 1        | 1
2  | San Deigo  | 1        | 2
3  | Bay Area   | 1        | 2
4  | San Fran   | 1        | 2

等级1表示最高级别,如加利福尼亚州。层次2表示第二级,如加利福尼亚州的州/地区,例如圣地亚哥。第三层表示像圣地亚哥的街道一样的第三层。是否可以获取具有2级父码的地区,看起来需要group by和join在同一个表中。

EN

回答 2

Stack Overflow用户

发布于 2020-06-05 19:37:56

这回答了问题的原始版本。

有没有可能得到具有2级父码的地区?

这只是一个选择:

代码语言:javascript
复制
select t.districtname, t.parencdoe 
from t
where t.hierarhy = 2;

您的数据格式不正确。您应该有一个引用该表的主键的parentid列。parentcode不合适。在所有行中都有像regionname这样的列似乎也是多余的。

票数 0
EN

Stack Overflow用户

发布于 2020-06-05 20:02:51

我想出了以下解决方案:

代码语言:javascript
复制
select p.name as Parent,
       c.name as Child      
FROM
    theTable p
INNER JOIN theTable c ON p.id = c.parentId
where p.hierarchy = 1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62210951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档