我目前面临一个问题,无法链接 3 个单独的 SQL 表。以下是不同表的相关部分。
Comments
commentID userID staffID comment comment_date
52 1037 0 sadsadsa 2016-01-12
54 0 1050 asda 2016-01-12
Users
userID first_name last_name
1036 Janet Ang
1037 glenn tan
Staffs
staffID staffName
1001 Ling Ling
1011 Lee Ming
1003 Joyce
1010 Titus
1008 Vivian
1005 Vincent
1006 Alex
1046 Glenn
1047 Glenn2
1048 glennjr2
1049 glenn3
1050 glenn4
我目前正在尝试检索用户和工作人员的评论,这三个表没有关联。 “评论”表链接到“用户”和“员工”表,但“用户”和“员工”表没有链接在一起。我正在使用这个查询
SELECT comments.comment, users.first_name, users.last_name, staffs.staffName, comments.comment_date
FROM comments
INNER JOIN users
on comments.userID = users.userID
LEFT OUTER JOIN staffs
on comments.staffID = staffs.staffID
WHERE comments.videoID = $vid_id
任何人都可以帮忙看看如何更改查询来解决我的问题吗?感谢您提供的任何帮助。
最佳答案
您可以对两个表使用 INNER JOIN (users,staffs)
与 comments
表:
示例:
SELECT comments.comment, users.first_name, users.last_name, staffs.staffName, comments.comment_date
FROM comments
INNER JOIN users ON comments.userID = users.userID
INNER JOIN staffs ON comments.staffID = staffs.staffID
WHERE comments.videoID = $vid_id
此后,您将得到两个结果,一个为 users
和一个 staffs
.
如果您需要所有用户和员工 comments
可用或不可用 LEFT JOIN
使用相同的查询。
关于PHP SQL : Selecting fields from three tables that are not interlinked,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34739960/