我的数据库中有三个表:评论、地标、用户,我想从每个表中获取一些属性,我尝试使用以下查询,但没有检索到任何内容,这是我的 3 个表
user (userid,firstName,lastName)
comment (userid,L_ID,review)
landmarks (L_ID,Title)
用户和对userid的评论 并在 L_ID 上评论地标
$q = mysqli_query($con,"SELECT l.*,c.id,c.review,CONCAT(u.firstName,' ',u.lastName) name FROM landmarks l inner join comment c on l.L_ID on c.L_ID inner join users u on u.userid=c.userid WHERE ".(isset($userid) ? "c.userid=$userid" : (isset($landmarkid) ? "c.L_ID=$landmarkid" : "") )." ORDER BY c.id");
最佳答案
我认为您的“内部连接评论 c”的 ON 部分有错误
SELECT l.*,c.id,c.review,CONCAT(u.firstName,' ',u.lastName) name
FROM landmarks l
inner join comment c
on l.L_ID
on c.L_ID
inner join users u
on u.userid=c.userid
WHERE ".(isset($userid) ? "c.userid=$userid" : (isset($landmarkid) ? "c.L_ID=$landmarkid" : "") )."
ORDER BY c.id
我相信你想要的是
SELECT l.*,c.id,c.review,CONCAT(u.firstName,' ',u.lastName) name
FROM landmarks l
inner join comment c
on c.L_ID = l.L_ID
inner join users u
on u.userid=c.userid
WHERE ".(isset($userid) ? "c.userid=$userid" : (isset($landmarkid) ? "c.L_ID=$landmarkid" : "") )."
ORDER BY c.id
关于php - 三表内联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44058719/