【发布时间】:2016-03-31 21:18:15
【问题描述】:
我正在使用 PHP 和 MYSQL 显示最新用户活动的概览。
我有五个活动,但假设我们只有两个活动(posts 和 cmets),所以基本上使用 MYSQL 我必须从两个按日期列排序的表中获取结果(所有活动表都有一个日期列) ,然后使用 PHP 我需要遍历这些结果,并且对于每种结果类型(帖子或评论)我需要以不同的方式处理它(帖子和 cmets 具有不同的 html)。
我首先想到的是 MYSQL UNION ALL 运算符,但 w3schools 说
UNION 中的每个 SELECT 语句必须具有相同数量的列。这些列还必须具有相似的数据类型。另外,每个 SELECT 语句中的列必须是相同的顺序
而且我的帖子和 cmets 表没有相同数量的列或数据类型,我也不知道如何以不同的方式处理每种结果类型。
我迷路了,知道吗,如果你能以任何方式帮助我,那就太好了,谢谢。
额外
这是帖子和 cmets 表的示例
-- Comments table
id|user_id|post_id|c_date|comment
-- Posts table
id|user_id|p_date|title|content
更新1
我不想加入行,我想将每一行显示为自己的,而不是与另一行加入。
【问题讨论】:
-
使用join操作
-
你能告诉我们更多关于表格结构的信息吗?
id和uid是什么?它们是否相互关联? -
@ShaifulIslam join 用于将行连接在一起,我不想连接行,我想将每一行显示为自己的,而不是与另一行连接。
-
因为posts和cmets有不同的html,php解决方案值得一试。
-
那么如何知道用户是否在
post中发表了评论?