Есть две таблицы comments и users. Они связаны между собой. Необходимо получить данные из обеих таблиц в одном запросе. Делаю такой запрос
$Result = mysqli_query($CONNECT, 'SELECT comments.id, comments.added, comments.date, comments.text, users.id, users.fname, users.lname, users.avatar, users.login FROM comments, users ORDER BY comments.id DESC');
И вывожу:
while ($Row = mysqli_fetch_assoc($Result)) { echo '
<h6 class="comment__name">
<a href="/users/'.$User['login'].'">'.$Row['fname'].' '.$Row['added'].' '.$Row['lname'].'</a></h6>
<span>'.$Row['date'].'</span>
<div class="comment__content">'.$Row['text'].'</div>
';}
Проблема в следующем: одну и ту же строку while выводит 2 раза.
Спасибо Mike за подсказку, решение:
$Result = mysqli_query($CONNECT, ('SELECT comments.id, comments.added, comments.date, comments.text, users.id, users.fname, users.lname, users.avatar, users.login FROM comments, users WHERE comments.added = users.login ORDER BY comments.id DESC'));
Если таблицы связаны по id
используйте, например, такой запрос:
SELECT
c.id,
c.added,
c.date,
c.text,
u.fname,
u.lname,
u.avatar,
u.login
FROM
comments c,
users u
WHERE c.id = u.id
ORDER BY c.id DESC
или используйте join
.
Если сам запрос возвращает по 2 строки, добавь DISTINCT после SELECT
SELECT DISTINCT comments.id, comments.added, comments.date, comments.text, users.id, users.fname, users.lname, users.avatar, users.login
FROM comments, users
ORDER BY comments.id DESC
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
На сайте под управлением Wordpress есть форма сделана c помощью плагина Contact Form 7Как добавить во входящий имейл из формы еще функцию get_page_link() Мне...
Учу язык С++ по книги РЛафоре "Объектно-ориентированное программирование на С++"
На данный вопрос уже ответили: