当前位置: 移动技术网 > IT编程>开发语言>.net > asp.net 多字段模糊查询代码

asp.net 多字段模糊查询代码

2018年04月21日  | 移动技术网IT编程  | 我要评论

湖南妹子张丽,蝙蝠侠阿卡姆骑士,汤灿 许宗衡

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 '%移动技术网%' 
函数:
/// <summary>
/// 根据关键字实现多字段模糊查询
/// </summary>
/// <param name="sqlstr">select * from talbe sql语句</param>
/// <param name="sqltext">判断语句条件,是一个用|隔开的字符串</param>
/// <param name="keywords">关键字</param>
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;

}

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网