Форум: "Базы";
Текущий архив: 2003.12.23;
Скачать: [xml.tar.bz2];
ВнизSelect Найти похожие ветки
← →
viper_cd (2003-12-01 09:18) [0]Есть массив целых чисел [1,7,12,45....], эти числа - номера уникальных полей в таблице! Как сделать запрос и выбрать записи чтобы он возвратил все записи которые указаны в массиве? Я так думаю это должна быть процедура, но как там все написать...пожалуста помогите!
← →
Илайдж (2003-12-01 09:28) [1]
var
s: string
sql: string;
for i:=0 to mas_count-1 do s := s + inttostr(mas[i])
sql := "select * from table where id in (" + s + ")"
← →
bon (2003-12-01 09:33) [2]var str:string;
i:integer;
.....
begin
......
Query.close;
Query.sql.Clear;
Query.sql.add("select * from table");
str:="(";
for i:=1 to n-1 do str:=str+IntToStr(mass[i])+",";
str:=str+IntToStr(mass[n])+")";
Query.sql.add("where fild in "+str);
Query.open;
......
end;
Идею понял?
← →
Silver Alex (2003-12-01 10:07) [3]function ArrayToParam(ar: array of integer): String;
var
i: Integer;
begin
if Length(ar)=0 then
begin
Result:="-1";//ID той записи которой наверняка нет
Exit;
end;
for i:=low(ar) to high(ar) do
if Result=EmptyStr then
Result:=inttostr(ar[i])
else
Result:=Result+","+inttostr(ar[i]);
end;
Query.sql.add("where fild in ("+ArrayToParam(MainArray)+")";
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.12.23;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.008 c