这是我的表格
主题 -ID -标题 -category_id
帖子 -ID -topic_id -用户身份 -日期 -时间 -txt
用户 -ID -username
我想列出每个主题的类别,并提供以下信息 作者的用户名(首先发布),回复数量,最后回复作者的姓名,以及按帖子日期排序的最后一个帖子的日期。
我可以用一些嵌套循环和一堆查询来做到这一点,但我想知道是否可能有一个或两个mysql查询?
代码我已经安慰了......
$query = "SELECT * FROM user u,topics t,posts p WHERE t.category_id=1 AND t.id=p.topic_id AND p.user_id=u.id ORDER BY p.date DESC, p.time DESC";
答案 0 :(得分:0)
$sql = "SELECT * FROM user u,topics t,posts p WHERE t.category_id=1 AND t.id=p.topic_id AND p.user_id=u.id ORDER BY p.date DESC, p.time DESC";
$query = mysql_query($sql);
while ($result = mysql_fetch_array($query)) {
// do some stuff with $result
}
(改变变量以使其更有意义)
答案 1 :(得分:0)
只需将first_topic_id
和last_topic_id
列添加到topics
表即可。这是常见的做法,它可以帮助您获得简单快速的查询。