mysql - 两个关系表,同一个引用的两个外键。如何加入数据?
问题描述
我有以下表格:
用户表数据:
历史表数据:
我想在每一行中使用相应的用户名获取整个历史记录,如下所示:
| id | seller | client |
| 1 | John | Peter |
| 2 | John | Peter |
| 3 | Peter | John |
我试过了,INNER JOIN
但我不能得到结果,因为我当然不能查询类似的东西:
SELECT history.id, users.name AS seller, users.name as client
那么得到该结果的相应查询是什么?
解决方案
您可以加入两次:
select h.id, us.name seller, uc.name client
from history h
inner join users us on us.id = h.sellerid
inner join users uc on uc.id = h.clientid
推荐阅读
- javascript - 快递:我怎样才能用下一个转发错误
- ruby-on-rails - 控制搜索结果位置 SearchKick
- java - 任何人都可以帮助我:android.database.sqlite.SQLiteException:靠近“,”:语法错误(代码1):,
- c# - 列表
从每个值的两侧附加 char - jpa - Rapidclipse:初学者问:使用自行创建的 JPA SQL 进行延迟加载?RC的支持?
- python-3.x - 如何旋转 matplotlib.patches.Polygon?
- python - 使用 Selenium 和 Python 检查表 Web 中项目的背景
- azure-devops - Windows XP 上的 Azure DevOps Server 构建代理
- cron - crontab 和 Rundeck 之间有集成吗?
- visual-studio-code - 无法在 alpine linux 上的代码服务器上打开终端