怎样将数组作为sql中in的查询条件?

2025-04-22 07:36:02
推荐回答(1个)
回答(1):

/*虽然问题已经提问蛮久了,但是刚好最近自己也遇到这个问题,就把自己的解决方法贴出来吧
这个是用C#写的,原理都是一样的。*/  
      
        string kk = "tt,oo,pp";    //假设从文本框获取的值是字符串kk
        string[] b = kk.Split(',');    //将字符串中的","除去后存入数组里
        string endstr = "";
        for (int i = 0; i < b.Length; i++)  //根据数组的元素个数判断循环次数
        {
            kk = "'" + b[i] + "'";  //在每个元素前后加上我们想要的格式,效果例如:
            // " 'tt' "
            if (i < b.Length - 1)  //根据数组元素的个数来判断应该加多少个逗号
            {
                kk += ",";
            }
            endstr += kk;
        }
        string sqlstr = "select * from tablename where xxx in(" + endstr + ")";
   //最后 select * from tablename where xxx in ('tt','oo','pp')

如果还有更好的办法,也欢迎各位网友能够指教,谢谢!祝各位生活愉快,工作顺利!