首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >php mysql UNION ALL -从单独的表中获取id

php mysql UNION ALL -从单独的表中获取id
EN

Stack Overflow用户
提问于 2018-06-24 23:20:54
回答 1查看 80关注 0票数 0

我想知道有没有什么能帮上忙的。

我正在做一个时间线,它工作得很好,但我正在努力使它添加图片也…我正在努力寻找解决方案,我会尽量说清楚……UNION ALL很好地获取了我需要的信息并显示出来,然而,当我试图从一个保存着我被卡住的路径的图像表中获取所述事件的图像时。

表示例(不是实际的表):

论坛

代码语言:javascript
复制
|id.....|memberid.|Descrip....|date....|

|71.....|1........|Hello all..|date....|

|82.....|5........|Hows you...|date....|

成员

代码语言:javascript
复制
|id.....|memid....|username...|date....|

|1......|1........|Steve......|date....|

|2......|5........|Donna......|date....|

图片

代码语言:javascript
复制
|id.....|memid....|image     

|47.....|1........|images/stevepic.png|

|139....|5........|images/donnapic.png|

好的,正如下面的代码所示,信息显示得很好,没有问题:)

代码语言:javascript
复制
SELECT id as timeline_id, date_time as timeline_date, thread_title as 
timeline_title, post_body as timeline_body FROM forum_posts
UNION ALL
SELECT memid as timeline_id, lastlogin as timeline_date, memusername as 
timeline_title, town as timeline_body FROM members

我一直在通过网络,堆栈溢出,我想我需要做一个左连接,我可能是错的,我不确定,但这是我认为是正确的方式。

当我做下面的左连接时,我得不到页面,只有空白。错误日志: PHP警告: mysqli_fetch_array()要求参数1为mysqli_result

代码语言:javascript
复制
SELECT id as timeline_id, date_time as timeline_date, thread_title as 
timeline_title, post_body as timeline_body FROM forum_posts
UNION ALL
SELECT memid as timeline_id, lastlogin as timeline_date, memusername as 
timeline_title, town as timeline_body FROM members LEFT JOIN membersimages ON membersimages.memid = members.memid WHERE memid = %s

我试图收集的是成员的ID,因为论坛部分没有任何图片,但成员有,在时间线上我希望显示成员的图片:)

我希望我已经解释了我正在努力实现的目标,如果我弄错了,希望有人能给我指明正确的方向:)谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-25 03:18:08

使用此解决方案:

代码语言:javascript
复制
$sql = "select *
        from members as 'mem'
        inner join forum_posts as 'fp'
        on fp.memberid = mem.memid
        inner join images as 'img'
        on img.memid = mem.memid
        where 1" ;

如上所述,您可以在一次拍摄中获取所有记录,但在输出数组中会有重复的成员in,因为一个成员将有不同的帖子。所以更好的方法是在内部连接中使用'members‘和'images’表(希望一个用户有一个配置文件镜像),并创建第二个sql来从'members‘获取成员id的所有帖子。希望上面的解决方案能对你有所帮助。如果有任何错误,请通知我。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51011269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档