小编典典

通过另一个表中的列进行SQL排序

sql

我有3个表:人员,组和成员身份。成员资格是人员和组之间的联接表,共有3列:personId,groupId和description(文本)。

我想根据groupId从成员资格表中选择条目,但是将结果按与找到的成员资格相关联的人的名字排序(name是人次表的一列)

SELECT * FROM "memberships" WHERE ("memberships".groupId = 32) ORDER BY (?????)

是否可以在单个查询中实现?


阅读 210

收藏
2021-03-17

共1个答案

小编典典

加入人员表,然后按所需字段排序。

SELECT
  m.* 
FROM 
  "memberships" AS m
  JOIN "people" AS p on p.personid = m.personID
WHERE
  m.groupId = 32
ORDER BY 
  p.name
2021-03-17