回答

收藏

如何在单个查询中对孩子和父母进行分组?

技术问答 技术问答 184 人阅读 | 0 人回复 | 2023-09-12

我有一个表,代表一个简单的父级->子级层次结构,如下所示:0 ~! X! f5 m5 A( j, g5 v
             Table "public.transactions"$ g; e6 L, g, D: L! u
   Column  | Type          |  Modifiers
# j  X2 A  h. h6 Z-----------+---------------+-----------------------------------------------------------& R4 D9 E3 I+ F# C* ?- N6 O
id        | integer       | not null default nextval('transactions_id_seq'::regclass)
9 q1 ]6 y: D- S5 i3 |4 \ parent_id | integer       | not null default 0: x) ^9 q9 A; \/ }- k) c3 o3 [- b
amount    | numeric(15,4) | not null default 0.0000
" \6 l6 R$ q% O4 M' a, V我想显示子交易(其parent_id> 0的交易)分组在其各自父项下方的表。例如,
7 }2 g7 U7 ]9 c$ l/ ^parent
( u# S. [6 F0 q0 t% w   child( H/ X/ B" L- p- \& i: H8 i# A) Y2 A
   child
+ f  U* ^, i& y8 G0 i1 wparent7 }" ?9 N/ s2 P3 D: p5 @+ P7 ]! N
   child  L" a% N. c" q) Y' L5 y) i
parent, h+ o# A( k+ p7 o7 `
parent( G) R. G& G" r2 l  S
(注意:嵌套空间仅在此处用于直观地表示层次结构,查询结果不需要它们)
4 L  R3 X6 f4 U' _: y我可以在单个查询中执行此操作吗?我正在运行Postgresql 9.3以防万一。) u) e0 V$ v9 v$ n  f: E5 `0 W* O
                * ?; P& _" O! I
解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则