首页  ·  知识 ·  云计算
asp.net多字段模糊查询
佚名  本站原创  综合  编辑:dezai  图片来源:网络
string strField = "id|className|classAdd";string strKeyWords = this.tbxKeyWords.Text.Trim();string strSql = dbexe.searchText("select * fro

string strField = "id|className|classAdd";
string strKeyWords = this.tbxKeyWords.Text.Trim();
string strSql = dbexe.searchText("select * from class", strField, strKeyWords);
经常用到多字段的模糊查询,上面的函数可以实现,例如strKeyWords值为“阿会楠”时,可以输出:
select * from class where id like '%阿会楠%' or className like '%阿会楠%' or classAdd like '%阿会楠%'
函数:
///


/// 根据关键字实现多字段模糊查询
///

/// select * from talbe sql语句
/// 判断语句条件,是一个用|隔开的字符串
/// 关键字
public static string searchText(string strSql, string strField, string keywords)
{
    StringBuilder sb = new StringBuilder(strSql);
    if (strField != string.Empty)
    {
        sb.Append(" where ");
        string[] arrKey = strField.Split('|');
        for (int i = 0; i < arrKey.Length; i++)
        {
            sb.Append(arrKey[i] + " like '%" + keywords + "%' or ");
        }
        string str = sb.ToString();

        //去除最后一个"or"
        if (str.IndexOf("or") >= 0)
        {
            return str.Remove(str.LastIndexOf("or"));
        }
        return str;
    }
    return strSql;

}

本文作者:佚名 来源:本站原创
CIO之家 www.ciozj.com 微信公众号:imciow
   
免责声明:本站转载此文章旨在分享信息,不代表对其内容的完全认同。文章来源已尽可能注明,若涉及版权问题,请及时与我们联系,我们将积极配合处理。同时,我们无法对文章内容的真实性、准确性及完整性进行完全保证,对于因文章内容而产生的任何后果,本账号不承担法律责任。转载仅出于传播目的,读者应自行对内容进行核实与判断。请谨慎参考文章信息,一切责任由读者自行承担。
延伸阅读