我想要做的是一个游戏应用程序,我需要搜索我的非玩家角色,并且他们有一个名为target_id的字段,该字段存储了他们所追逐的任何东西的ID。

given:
table mobs with fields and some example data
id   x   y   target_id
1    1   1   2
2    3   3   1


我想通过查询返回以下数据

id   x   y   target_id target_x target_y
1    1   1   2         3        3
2    3   3   1         1        1


这是我尝试过的,但是存在语法错误

SELECT id,x,y,target_id, target.x, target.y FROM mobs LEFT JOIN mobs AS target ON      target_id=id FROM mobs WHERE 1

最佳答案

我不知道您为什么拥有WHERE 1或第二个FROM,但是我相信这就是您想要的:

SELECT M.id, M.x, M.y, M.target_id, T.x, T.y
FROM mobs AS M
LEFT JOIN mobs AS T
ON M.target_id = T.id


将来,您应该发布表定义和预期结果,以便您的问题更加清楚。

08-27 06:09