根据同一个表中的数据选择数据

时间:2017-05-31 22:36:15

标签: mysql

我无法确定如何根据同一个表中的数据选择数据。

我有这张桌子:

id  claimant  approver_id
1       A         4
2       B         4
3       C         1
4       D         1

我想得到批准者但是有名字而不是id。我怎样才能做到这一点?

它应该是这样的:

id  claimant  approver_id  approver
1       A         4           D
2       B         4           D
3       C         1           A
4       D         1           A

2 个答案:

答案 0 :(得分:1)

将JOIN用于具有条件的同一个表,并为列添加别名,以便为审批者命名。这称为自联接。

select t.claimant, t.approver_id, k.claimant AS approver
from yourtable t
join yourtable k on t.approver_id = k.id

答案 1 :(得分:1)

SELECT a.id, a.claimant, a.approver_id, b.claimant AS approver
FROM tab AS a
JOIN tab AS b ON a.approver_id = b.id