我当前正在尝试运行sql语句以从2个表中提取数据,我想知道是否有人可以帮助我编写代码。我想在两个表中的Project.Project_ID
中提取Project.StartDate
,Project.Users
,Project_ID = 1
。
SELECT Project.Project_ID, Project.StartDate, Project.Users
FROM Project
INNER JOIN UserList ON Project.Project_ID=UserList.Project_ID
WHERE Project.Project_ID = '1';
答案 0 :(得分:0)
我不确定您的问题陈述是什么。如果您可以提供更多详细信息(数据库结构),那将真的很有帮助。
您可能要根据数据结构解决一种以上的情况。
我在这里唯一看到的是您应该拥有Project.Users
而不是UserList. Users
。我假设用户列表表具有所有用户详细信息,并且它不是数据透视表。如果是这样,则需要另一个与User表的联接。
SELECT
Project.Project_ID, Project.StartDate, UserList.Users
FROM
Project
INNER JOIN UserList ON Project.Project_ID=UserList.Project_ID
WHERE
Project.Project_ID = '1';
请分享您的数据库结构。
答案 1 :(得分:0)
在您的模型中,用户只能链接到一个项目。
以下是联接表UserProject。
这样,n个用户可以参与n个项目。 (n对n的关系)
SELECT
p.id AS projectId,
p.startDate,
u.id AS userId,
u.name,
[...]
FROM
Project AS p,
UserProject AS up,
User AS u
WHERE
p.id = up.projectId
AND u.id = up.userId
AND p.id = 1;
这里是一对一的关系
[...]
FROM
Project AS p,
User AS u
WHERE
p.id = u.projectId
AND p.id = 1;