我正在使用 PHP 和 MYSQL 显示最新用户事件的概览。
我有五个事件,但假设我们只有两个事件(帖子和评论),所以基本上使用 MYSQL 我必须从按日期列排序的两个表中获取结果(所有事件表都有一个日期列) ,然后使用 PHP 我需要遍历这些结果,并且对于每种结果类型(帖子或评论)我需要以不同的方式处理它(帖子和评论具有不同的 html)。
我首先想到的是 MYSQL UNION ALL Operator 但 w3schools 说
each SELECT statement within the UNION must have the same number of columns. The columns must also have similar data types. Also, the columns in each SELECT statement must be in the same order
而且我的帖子和评论表没有相同数量的列或数据类型,而且我不知道如何以不同方式处理每种结果类型。
我迷路了,如果你能以任何方式帮助我,那就太好了,谢谢。
额外
这是一个帖子和评论表的例子
-- Comments table
id|user_id|post_id|c_date|comment
-- Posts table
id|user_id|p_date|title|content
更新1
我不是要连接行,我想显示每一行,而不是将它与另一行连接起来。
最佳答案
SELECT column 1, column 2, '' AS 'column 3' FROM table a
UNION
SELECT column 1, column 2, column 3 FROM table b
如果您事先知道表的结构,则可以按以下方式使用 UNION
关于php - 如何在一个循环中显示按日期列排序的多个 mysql 表的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36343990/