Это тридцать человек в одном хоре. так что я извиняюсь!
но я не получил то, что хочу!
я попытаюсь объяснить подробнее ..
У меня две таблицы.
POSTS <- my (все сообщения сайта) КОММЕНТАРИИ <- my (все комментарии сайта)
я хочу отображать все POSTS и КОММЕНТАРИИ на этой странице
купить (1 запрос)
у меня в таблице POSTS (100 сообщений), и у меня есть в КОММЕНТАРИИ таблица (20 комментариев)
я пробую этот код
$qq = mysql_query("SELECT posts.*,comments.* FROM posts LEFT JOIN comments ON posts.post_id = comments.post_id"); while($tt = mysql_fetch_array($qq)){ echo $tt['comment_title'] . '<br />'; //the title of comments ! }
в выше, iam пытается напечатать название комментария
Я сказал выше, у меня есть (только 20 комментариев)!
код выводится (120 комментариев с повторением!)
120 – общая сумма двух таблиц!
/ * Я хочу только распечатать 20 комментариев и 100 сообщений (в одном запросе)
Как я могу это сделать! ?
в конце я сожалею об этом больше вопроса
но мне действительно нужна помощь! мой сайт не работает
Ваш вопрос супер двусмыслен, поэтому я сделаю все возможное:
SELECT * FROM posts LEFT JOIN comments ON posts.post_id = comments.post_id
Это запрос, который вы хотите (то же самое, что и у вас, но * вместо «posts. , Comments». ).
Это, конечно же, будет извлекать все строки в сообщениях, даже если у них нет комментариев. Вам нужно сделать:
SELECT * FROM posts LEFT JOIN comments ON posts.post_id = comments.post_id WHERE posts.post_id= = <some_id>
чтобы получить только комментарии конкретной записи. Конечно, это было бы глупо, поскольку это было бы то же самое, что просто делать:
SELECT * FROM comments WHERE post_id = <some_id>
Если вы хотите только выбирать строки в сообщениях, у которых есть комментарии, вы должны сделать:
SELECT * FROM posts INNER JOIN comments ON posts.post_id = comments.post_id
Или
SELECT * FROM posts NATURAL JOIN comments
(они имеют одинаковый эффект)
Я предполагаю, что вам нужно получить все сообщения (и по сообщениям, которые вы имеете в виду статьи)
да, вы можете использовать один запрос:
SELECT * FROM articles;
Получить все статьи
<?php $sql = "SELECT * FROM articles"; $query = mysql_query($sql); while($result = mysql_fetch_assoc($query){ echo $result['post_title']; } ?>