免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1925 | 回复: 6
打印 上一主题 下一主题

条件子集怎么写? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-05-07 17:37 |只看该作者 |倒序浏览
从users表里统计80后和90后的数量,gmsfhm是身份证号码,如下写报错:缺少右括号,本意是把符合条件的80后和90后号码合成一个like查询条件子集,应该怎么写?

select count(gmsfhm) from users where gmsfhm like ('______198_________' or  '______199_________')


非要这样才可以?似乎效率差些。
select count(gmsfhm) from users where gmsfhm like '______198_________' or gmsfhm like '______199_________'

论坛徽章:
0
2 [报告]
发表于 2012-05-31 15:04 |只看该作者
居然一直没有人回复!

论坛徽章:
0
3 [报告]
发表于 2012-05-31 16:54 |只看该作者
前种根本就是不符合语法的。
like本身就谈不上效率

论坛徽章:
0
4 [报告]
发表于 2012-05-31 17:03 |只看该作者
doni 发表于 2012-05-31 16:54
前种根本就是不符合语法的。
like本身就谈不上效率


难道不能构建一个符合身份证号码条件的子集了?不用like的话,怎么才有效率呢?

论坛徽章:
0
5 [报告]
发表于 2012-05-31 17:37 |只看该作者
按你目前的需求,并没有太好的方法,除非增加字段

论坛徽章:
0
6 [报告]
发表于 2012-05-31 17:44 |只看该作者
doni 发表于 2012-05-31 17:37
按你目前的需求,并没有太好的方法,除非增加字段

如果where条件子句里某个字段符合某个子集,不能构造这个子集,只能一个个写出来,用or隔开?好麻烦啊!

论坛徽章:
0
7 [报告]
发表于 2012-05-31 17:59 |只看该作者
回复 6# sndbox


    语法如此
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP