![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Уникальные значения
Nina © (2002-03-21 09:26:00)Помогите пожайлуста внести в ComoBox уникальные значения из таблицы по опред полю.
Вот например
with ComboBox3 do
begin
Items.Clear;
DataModule1.TRezeptQuery7.First;
while not DataModule1.TRezeptQuery7.EOF do
begin
Items.Add( DataModule1.TRezeptQuery7.FieldByNamе( "Prod").AsString );
DataModule1.TRezeptQuery7.Next;
end;
end;
у меня вводяться в ComboBox все Prod
и даже повторяющениеся
а мне надо уникалльные
вот примерно так
select distinct prod
from prod_spravka.db
только не заю как это применить в этом коде!
помогите
asafr (2002-03-21 12:22:00) [1]ComboBox3.Items.Clear;
with Query1 do begin
try
if active then close;
SQL.Clear;
SQL.Add("select distinct Prod from Table1");
Open;
While not EOF do begin
ComboBox3.Items.Add(FieldByName("Prod").AsString);
Next;
end;
finally
Close;
end;
end;
Lusha (2002-03-21 10:46:00) [2]>Stratos
У ComboBox есть свойство Duplicates.
А вообще, на мой взгляд, лучший вариант выбирать в Query то, что нужно.
Фэ (2002-03-21 09:59:00) [3]2 Nina
Собственно Вы сами уже и ответили.
Именно так: "SELECT DISTINCT.."
Затем в цикле проходите по query для которого сделан этот запрос и заносите значения в ComboBox.
Stratos (2002-03-21 09:36:00) [4]Ну делай проверку
iStr:= DataModule1.TRezeptQuery7.FieldByNamе( "Prod").AsString;
//^ заносим значение во временную строку
if Items.IndexOf(iStr)<0 then
//проверяем есть ли она в списке
begin
Items.Add(iStr);//если нет то добавляем
end;