Как сделать новый <tr>, если id в следующей записи отличается

0

Скажем, у меня есть этот результат моего запроса:

id_unsur | nama_subunsur
---------+--------------
       1 | subunsur1
       1 | subunsur1
       2 | subunsur3

Я хочу получить результат в таблицу, и если id совпадает с id в следующем результате, я не хочу эхо-повторять новый <tr>, а если он отличается от echo new <tr>. Я хочу:

1 | subunsur1
2 | subunsur3

Я хочу сделать это в:

while ($data = mysql_fetch_array($query)) {
    // I want to do that here...
}

В моем запросе нет проблем, я не использую группу, потому что другой результат поля отличается. Итак, как это сделать? Любая помощь будет оценена.

  • 2
    Вы могли бы, вероятно, устранить необходимость в этом, используя SELECT DISTINCT вместо SELECT (см. Руководство )
Теги:
loops
html-table

2 ответа

1

Чтобы избежать дублирования строк, используйте предложение DISTINCT в выбранном статусе.

SELECT DISTINCT columns FROM table_name WHERE where_conditions;
1

Создайте пустой массив вне цикла while.

Всякий раз, когда вы печатаете любой идентификатор, введите его id в массив.

перед печатью проверьте, присутствует ли этот идентификатор в этом массиве.

ПСЕВДОКОД

if(id present in array){
  dont print
}else {
  print tr
  push it to array
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню