MySQL форум php список - PullRequest
       7

MySQL форум php список

0 голосов
/ 22 октября 2010

вот мои столы

Темы -Я бы -заглавие -category_id

сообщения -Я бы -topic_id -Идентификатор пользователя -Дата -время -txt

Пользователь -Я бы -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";

Ответы [ 2 ]

0 голосов
/ 22 октября 2010

Просто добавьте столбцы first_topic_id и last_topic_id в таблицу topics.Это обычная практика, и она поможет вам получать простые и быстрые запросы.

0 голосов
/ 22 октября 2010
$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
}

(измененные переменные, чтобы сделать их более понятными)

...