![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() есть некая таблица с которой содержаться данные и время их занесения - все это выводится в DBGrid - нужно избавиться от строк которые по своему значению (ну кроме времени) неотличаються от самой первой, но в случае если строка отличается, то удалять данные далее нада сглядя уже на эту строку.
например если идет 1 2 3 время 1 2 3 время //удалить 2 2 3 время //далее удалять исходя из данных в этой строке 1 2 3 время //данные снова поменялись смотреть уже по этим данным |
#2
|
||||
|
||||
![]() т.е. если следующая строка = предидущей, то ее надо удалить?
Например 1 2 3 - новые данные 1 1 1 - новые данные 1 1 1 - эту строку удаляем 1 1 1 - эту строку удаляем 1 1 3 - новые данные 1 1 2 - новые данные Смысл такой? "Избавиться"- это удалить из базы или просто не отображать? Если удалить, то Код:
var stroka:string; begin Table1.First; while not Table1.Eof do begin stroka:=Table1.FieldByName('colum name').AsString; Table1.Next; if Table1.FieldByName('colum name').AsString = stroka then Table1.Delete else stroka:=Table1.FieldByName('colum name').AsString; end; end; |
#3
|
|||
|
|||
![]() ну вообще хотелось бы неудалять а только неотображать (хотя если небудет выхода буду удалять)
Цитата:
ну насчет кода - с DBGrid так просто неудалишь - как там вообще удалить строку предварительно считав что в ней |
#4
|
|||
|
|||
![]() вообще код работает - но получилось несовсем то что нужно (ну там всеравно еще правки и в таблице данные по нескольким объектам сожержаться вперемешку)
ну как говориться "будем искать с перламутровыми пуговицами" прийдется писать нудный скрипт по чистке базы от ненужных строк (ох нехотелось мне программу нагружать лишними запросами к базе - итак грузит на всю катушку иногда) |