首页 新闻 会员 周边

DataTable.Select 如何模糊查询

-1
悬赏园豆:10 [已解决问题] 解决于 2012-05-31 11:50

select(string filterExpression) 假如我希望筛选出所有id是长度是2 第一个字符是1的的所有行

但是filterExpression="id like ' 1_'" 这样查不出数据 但是在sql server2008中去可以查询到数据 求高手解答?

普通用户的主页 普通用户 | 初学一级 | 园豆:54
提问于:2012-05-31 10:18
< >
分享
最佳答案
-2

如果字符串,用:

dt.Select("len(id)=2 and id like '1%'")

如果id是数值(整数),最好用:

dt.Select("id>=10 and id < 20");
收获园豆:10
无之无 | 大侠五级 |园豆:5095 | 2012-05-31 10:39

刚找了篇文章:http://wenku.baidu.com/view/11bc117c31b765ce050814b7.html

里面的很多,我实验了下,似乎并无效果,不过这个可以满足你的要求:

dt.Select("id like '1[0-9]'")
无之无 | 园豆:5095 (大侠五级) | 2012-05-31 10:49

@笨笨蜗牛: 再分析了你的代码,你的查询条件里 " id like ' 1_'",这里,1的前面有个空格,是否这个原因?我在2008里确实是运行通过了,但我没有别的数据库系统环境,没办法实验。

你把那个空格删除后,问题还是一样吗?

无之无 | 园豆:5095 (大侠五级) | 2012-05-31 10:57

@笨笨蜗牛: 谢谢回答~

普通用户 | 园豆:54 (初学一级) | 2012-05-31 11:50
其他回答(1)
-3
dt.select("字段 LIKE '%a%' ")
xu_happy_you | 园豆:222 (菜鸟二级) | 2012-05-31 10:24

非常谢谢

支持(0) 反对(0) 我只是一只小小鸟 | 园豆:206 (菜鸟二级) | 2016-03-03 15:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册