2

我尝试开发一个黑手党游戏。我将用户存储在一个表中,每个用户都可以设置某人作为遗嘱。我的问题是:x 有 ID1,y 有 ID2 将 x 设置为遗嘱(这将存储 ID1)。

当 x 访问他的状态页面时,他应该看到他所有的东西 + 遗嘱 (y)。

当我遇到 MySQL 的东西时,我是新手,有人可以解释我该怎么做吗?可能将来我需要向该查询添加更多选择,如果有人能帮助我这样做会很棒:)

4

2 回答 2

1

You do it with aliases

e.g

Select m.Name as Mum, c.Name as Child
From People m
inner join People c
On c.MumId = m.ID

Would pickout

Mum   Child
Irene Tony 

from

People
ID Name MumID
1  Irene Null
2  Tony  1
于 2013-08-09T19:53:55.847 回答
0

如果x可以证明多个其他用户,那么最好使用两个查询来显示信息:

SELECT \* FROM users WHERE id = ID1;  //This will display user x's data  
SELECT \* FROM users WHERE testament = ID1;   //This will list all users with testament = x

如果它是 1 对 1 映射(x只能是零或一个其他用户的遗嘱),那么这有效:

SELECT u1.\*, u2.\* FROM users u1 LEFT JOIN users u2 ON u1.id = u2.testament WHERE u1.id = ID1;  
于 2013-08-09T20:00:14.230 回答