更新时间:2022-12-04 12:31:00
您可以使用UNION
语句。
这会产生类似的结果:
You can use theUNION
statement.
This would give something like:
SELECT `parent_org_id`,`orgs`.`org_name` as `org_name`, 'parent' as parent FROM `orgs_relation`
JOIN orgs ON orgs_relation.parent_org_id = orgs.id
WHERE org_id = (SELECT id FROM orgs WHERE org_name='Black Banana')
UNION
SELECT org_id, orgs.org_name, 'children' FROM `orgs_relation`
JOIN orgs ON orgs_relation.org_id = orgs.id
WHERE parent_org_id = (SELECT id FROM orgs WHERE org_name='Black Banana')
UNION
SELECT DISTINCT or2.org_id, org_name, 'sisters' FROM `orgs_relation` AS or1
JOIN orgs_relation AS or2 ON or1.parent_org_id = or2.parent_org_id
JOIN orgs ON or2.org_id = orgs.id
WHERE or1.org_id = (SELECT id FROM orgs WHERE org_name='Black Banana')
ORDER BY org_name ASC
参考: MySQL文档 - 13.2.9.3 UNION语法 [ ^ ]
亲切。
Reference: MySQL documentation - 13.2.9.3 UNION Syntax[^]
Kindly.