SELECT * from 表 where 字段 in 数组

2025-05-11 05:49:42
推荐回答(3个)
回答1:

楼上这么写适合少量的 要是array(100)的话那不累死了. 最好是先将数组每个值循环出来连接成符合sql的字符串 如(1,2,3,4,5...) 直接引用即可

sql = "SELECT * FROM TABLE WHERE AA IN (" '初始化查询字符串
For i = 0 to UBound(Ary) '从0循环到数组最大下标
sql = sql & Ary(i) & "," '将数组中每个值加在查询字符串后面
Next
sql = Left(sql,Len(sql)-1) & ")" '将最后一个逗号换为反括号

回答2:

String[] tmps = new string[2];
tmps[0] = "1";
tmps[1] = "2";
String tmp = "";
for (int i = 0; i{
tmp += "'" + tmps[i] + "'";
if (i < tmps.Length - 1)
{
tmp += ",";
}
}
//string str ="'1','2',";
string strda = string.Format("select * from tb_jieguo where id in("+ tmp+ ") ");
验证过的,数据的列为id,查找id列为1和2的行。

回答3:

select * from 表1 where code in (array(1),array(2),array(3),array(4),array(5),array(6),array(7),array(8),array(9),array(10))

select * from 表1 where code=array(1) or code=array(2) or code=array(3) or code=array(4) or code=array(5) or code=array(6) or code=array(7) or code=array(8) or code=array(9) or code=array(10)