Скажем, у меня есть этот результат моего запроса:
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...
}
В моем запросе нет проблем, я не использую группу, потому что другой результат поля отличается. Итак, как это сделать? Любая помощь будет оценена.
Чтобы избежать дублирования строк, используйте предложение DISTINCT
в выбранном статусе.
SELECT DISTINCT columns FROM table_name WHERE where_conditions;
Создайте пустой массив вне цикла while.
Всякий раз, когда вы печатаете любой идентификатор, введите его id в массив.
перед печатью проверьте, присутствует ли этот идентификатор в этом массиве.
ПСЕВДОКОД
if(id present in array){
dont print
}else {
print tr
push it to array
}
SELECT DISTINCT
вместоSELECT
(см. Руководство )