MySQL如何链接表

时间:2014-03-07 10:53:44

标签: mysql

我正在尝试使用mysql创建一个Web应用程序。有人可以解释我如何选择特定于一个用户的待办事项吗?如何将users表与todos表链接?一般建议将是优先的,而不是实际的代码。

2 个答案:

答案 0 :(得分:2)

它被称为外键关系。它就像这样

users table
-----------
id (auto increment primary key)
name
address
...


todos table
-----------
id (auto increment primary key)
user_id (id from users table - this is the foreign key and relation to the user)
todo_text
...

如果您想稍后选择用户的待办事项,则可以使用加入:

select todos.*
from todos
inner join users on users.id = todos.user_id
where users.name = 'john'

答案 1 :(得分:0)

你可以通过id's

链接它们

因此,如果您有两个表(UserTable)和(ToDoTable),您将获得带有这样的选择的待办事项。

Select * from ToDoTable where ToDoTable.user_id = 1;

该查询本质上是说从用户是bob的todotable给我一切(因为bob的主键id为1)

用户表将拥有以下用户:

Name | id  
Bob    1  
John   2  

和TodoTable将有

Task           |  user_id  
Clean dishes        2   
Take out Trash      1  

这样我们就可以通过user_id将任务链接到用户表了 User表将具有主键(id)
它在todo表上作为外键引用