需要通过另一个表php的其他列来区分一个表的列

时间:2019-02-03 15:28:13

标签: php mysql mysqli

这是我的查询

SELECT q.*
FROM
(
    SELECT postId, postContent, postDate FROM posts
    UNION ALL
    SELECT commentId, commentContent, commentDate FROM comments
) q
ORDER BY postDate DESC

我通过mysqli_fetch_assoc()循环中的while函数获得查询结果。

当我print_r()的结果成为键时,第一个SELECT的列就是键。

我如何也将评论作为键?

1 个答案:

答案 0 :(得分:0)

我不清楚您编写该联合查询时的想法,也不清楚您想要对结果集进行什么操作。但是一种可行的方法是在联合查询中添加一个计算列,例如

SELECT postId, postContent, postDate, 'post' AS type FROM posts
UNION ALL
SELECT commentId, commentContent, commentDate, 'comment' FROM comments

然后,当您在PHP中迭代结果集时,可以访问type键/列以找出该记录是帖子还是评论。