ASP中SQL查询条件如何与数组结合起来?
是这样的我有一个字段b(值类似:“1,2,3,4,5,6,7,8,9”)我想用字段b中的数字作为查询条件查询,select*fromxwhereidin(b)这样老是不行...
是这样的我有一个字段b(值类似:“1,2,3,4,5,6,7,8,9”)
我想用字段b中的数字作为查询条件查询,
select * from x where id in(b)
这样老是不行 用数组a把字段b用“,”分开
select * from x where id in(a)
也不行
不知道哪位高手能指点下吗?
b的值当只有一个数据时是没有逗号的,两个数据时有一个逗号,依次类推。 展开
我想用字段b中的数字作为查询条件查询,
select * from x where id in(b)
这样老是不行 用数组a把字段b用“,”分开
select * from x where id in(a)
也不行
不知道哪位高手能指点下吗?
b的值当只有一个数据时是没有逗号的,两个数据时有一个逗号,依次类推。 展开
4个回答
展开全部
方法如下:
procedure TMainForm.BitBtn3Click(Sender: TObject);
var
v_SQL_String, v_SQL_Integer, v_ID_String, v_ID_Integer: string;
A: array[1..3] of string;
B: array[1..3] of integer;
i: INTEGER;
begin
A[1] := '301010';
A[2] := '301012';
A[3] := '300111';
B[1] := 301010;
B[2] := 301012;
B[3] := 300111;
v_ID_String := '';
v_ID_Integer := '';
for i := 1 to 3 do
begin
v_ID_String := v_ID_String + '''' + A[i] + ''','; // string 数组串联
v_ID_Integer := v_ID_Integer + inttostr(B[i]) + ','; // integer 数组串联
end;
v_ID_String := copy(v_ID_String,1,length(v_ID_String)-1); //去掉结尾的逗号
v_ID_Integer := copy(v_ID_Integer,1,length(v_ID_Integer)-1); //去掉结尾的逗号
v_SQL_String := 'select * from ypmenu where id in (' + v_ID_String + ') ';
v_SQL_Integer := 'select * from ypmenu where id in (' + v_ID_Integer + ') ';
with OraQuery1 do
begin
close;
sql.Clear;
sql.Add(v_SQL_String); // string 数组查询
open;
end;
with OraQuery2 do
begin
close;
sql.Clear;
sql.Add(v_SQL_Integer); // integer 数组查询
open;
end;
end;
展开全部
你可以这样写!
a="1,2,3,4,5,6,7,8,9"
select * from x where id in ("& a &")
100%可以的,我一直都是这样写的。
你的可以改成
a=rs("b")
和上面是一样的
a="1,2,3,4,5,6,7,8,9"
select * from x where id in ("& a &")
100%可以的,我一直都是这样写的。
你的可以改成
a=rs("b")
和上面是一样的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的sql是什么数据库的?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
b 也在同一张表中?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询