zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

c#中的数组成为SQL中的IN查询条件

2023-04-18 14:16:13 时间

if (!string.IsNullOrEmpty(value))     //判断条件是否为空,为空则不进行转化,不然会报错
                {
                    string[] zhuanhuaArray = value.Split(',');    
                    var zhuanhuaString = "'";
                    if (zhuanhuaArray .Length - 1 != 0)   //如果只有一条数据的额外处理不然后面会多逗号和引号,只是个很傻的思路,建议寻找更好的方法。
                    {
                        for (var item = 0; item < zhuanhuaArray .Length - 1; item++)
                        {
                            zhuanhuaString += zhuanhuaArray [item] + "','";
                        }
                        zhuanhuaString +=  zhuanhuaArray [zhuanhuaArray .Length-1]+"'";
                    }
                    else
                    {
                        zhuanhuaString = "'" + string.Join("", zhuanhuaArray ) + "'";
                    }
                    sql.Append($" and  value IN({zhuanhuaString })");  //如果是where后的第一个条件取消and
                }

//注:建议封装为方式使用;

public class  shuzuHuaIn(value){

if (!string.IsNullOrEmpty(value))     //判断条件是否为空,为空则不进行转化,不然会报错
                {
                    string[] zhuanhuaArray = value.Split(',');    
                    var zhuanhuaString = "'";
                    if (zhuanhuaArray .Length - 1 != 0)   //如果只有一条数据的额外处理不然后面会多逗号和引号,只是个很傻的思路,建议寻找更好的方法。
                    {
                        for (var item = 0; item < zhuanhuaArray .Length - 1; item++)
                        {
                            zhuanhuaString += zhuanhuaArray [item] + "','";
                        }
                        zhuanhuaString +=  zhuanhuaArray [zhuanhuaArray .Length-1]+"'";
                    }
                    else
                    {
                        zhuanhuaString = "'" + string.Join("", zhuanhuaArray ) + "'";
                    }
                    sql.Append($" and  value IN({zhuanhuaString })");  //如果是where后的第一个条件取消and
                }

}