MySQL | Проверка повтора записи при выводе

Программирование, которое не связано с API.
Ответить
Аватара пользователя
ukhov
Модератор
Модератор
Сообщения: 1343
Зарегистрирован: 04 янв 2011, 21:19

MySQL | Проверка повтора записи при выводе

Сообщение ukhov »

Есть страница. На ней из MySQL выводятся записи, которые оставили пользователи. Как сделать так, чтобы на одного пользователя выводилась только одна запись из базы? Чтобы вторая, третья - не было их на странице?
Аватара пользователя
boombast1k
Сообщения: 332
Зарегистрирован: 23 июн 2011, 07:31

Re: MySQL | Проверка повтора записи при выводе

Сообщение boombast1k »

Код: Выделить всё

SELECT * FROM `'.$table.'` ORDER BY `usr_id` WHERE `usr_name`="'.$uname.'" ;'; 
Вроде так
Аватара пользователя
ukhov
Модератор
Модератор
Сообщения: 1343
Зарегистрирован: 04 янв 2011, 21:19

Re: MySQL | Проверка повтора записи при выводе

Сообщение ukhov »

так оно всё равно будет повтроятся
Аватара пользователя
ukhov
Модератор
Модератор
Сообщения: 1343
Зарегистрирован: 04 янв 2011, 21:19

Re: MySQL | Проверка повтора записи при выводе

Сообщение ukhov »

так там несколько другой код. ситуацию к записями и пользователями я придумал, т.к. она больше похожа на ту, которую мне нужно "решить".
там пишешь запрос, узнаёшь сколько записей и пока записи не кончатся, выводишь данные.
Аватара пользователя
ChineseBeemaster
Сообщения: 64
Зарегистрирован: 28 авг 2011, 04:02

Re: MySQL | Проверка повтора записи при выводе

Сообщение ChineseBeemaster »

кусок кода в студию, или более детальное описание задачи надо
Аватара пользователя
ukhov
Модератор
Модератор
Сообщения: 1343
Зарегистрирован: 04 янв 2011, 21:19

Re: MySQL | Проверка повтора записи при выводе

Сообщение ukhov »

ChineseBeemaster писал(а):кусок кода в студию, или более детальное описание задачи надо
1) не в студию, а на конференцию
2) не кусок, а весь

Код: Выделить всё

$query = "SELECT * FROM `НАЗВАНИЕ ТАБЛИЦЫ`";$res = mysql_query($query) or die(mysql_error()); $number = mysql_num_rows($res); if ($number == 0) {   echo "<P>База пуста"; } else {  /* Получать по одной строке из таблицы в массив $row, пока строки не кончатся */    while ($row=mysql_fetch_array($res)) {      echo " <P>Поле 1: ".$row['ПОЛЕ1']."</P>  ";  } } 
Аватара пользователя
ChineseBeemaster
Сообщения: 64
Зарегистрирован: 28 авг 2011, 04:02

Re: MySQL | Проверка повтора записи при выводе

Сообщение ChineseBeemaster »

Код: Выделить всё

SELECT * FROM `messages`  GROUP BY `user_id` ORDER BY `message_id` DESC
да так и никак иначе
запрос рассмотрим детально

Код: Выделить всё

ORDER BY `message_id` DESC
отсотрирует записи по ID т.е. новые (с больши ID) впереди

Код: Выделить всё

 GROUP BY `user_id`
сгрупирует записи так что останется только по одной (последней из-за ORDER BY) записи на пользователя

имея такие скудные данные невозможно верно решить задачу :D
Ответить