首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

查询语句

2011-12-28 
求一个查询语句查询一个人的信息时,想实现模糊查询,并且输入条件比较多,而且如果某一个输入框如果不输入的

求一个查询语句
查询一个人的信息时,想实现模糊查询,并且输入条件比较多,而且如果某一个输入框如果不输入的话就默认为所有条件都适合。
  如:有姓名、性别、id号、籍贯、民族等多个输入框,如果只输入id号“00”就查询所有id号中以00开头的人,如果输入了id号和姓名及民族分别为:   “00”、“张”、“汉”就查询所有以id号以“00”开头,并且姓名以“张”开头   、且是汉族的人。
    请大家帮帮忙!谢谢!
    由于是以在输入框中输入的数据为查询条件,所以最好用参数(@)

[解决办法]
select * from table
where ((id like @id + '% ') or (@id is null))
and (([name] like '% ' + @name + '% ') or (@name is null))
and (([sex] = @sex) or (@sex is null))
...

没有输入的参数传入System.DbNull
[解决办法]
从上向下一个一个拼接,虽然效率低,可是出错的概率也小

热点排行