SQL语句里能用正则表达式吗?asp程序

xfxq 2009-12-02 03:19:50
asp写的程序,sql server数据库。
表中有个字段为某功能比例,如:
1 45%儿童55%少年
2 100%成年
3 10%老年80%中年10%其它
.....

现在我要做查询,匹配字符,我用like没问题。但是现在要匹配比例,不知道怎么写语句?
不知道SQL语句里能不能直接写正则表达式?或者用别的方法,请大家帮助,谢谢。。。
...全文
196 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
junshanhudazhaxi 2009-12-07
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 junshanhudazhaxi 的回复:]
如果儿童、少年、中年、老年这些是固定的话,那你可以把原来的功能比例字段拆分成下列字段:
cfname_儿童, cfname_少年...
cfcount_儿童, cfcount_少年...

[/Quote]
如果儿童、少年、中年、老年这些是固定的话,那你可以把原来的功能比例字段拆分成下列字段:
cfname_儿童, cfname_少年...
cfcount就是一个个的数字填到上面对应的字段里
junshanhudazhaxi 2009-12-07
  • 打赏
  • 举报
回复
如果儿童、少年、中年、老年这些是固定的话,那你可以把原来的功能比例字段拆分成下列字段:
cfname_儿童, cfname_少年...
cfcount_儿童, cfcount_少年...
xfxq 2009-12-07
  • 打赏
  • 举报
回复
我分开来存放后,如何检索?
CfName 名称1,名称2,名称3
CfCount 25,25,50

匹配名称没有问题,如果来匹配CFCount的数字???
比如我选择10-50%的名称1,如果去判断CFCount的相应值在10-50的范围内???
junshanhudazhaxi 2009-12-05
  • 打赏
  • 举报
回复
这种有规律的固定格式的,就应该分开来放呀,这样灵活度也高得多。
擒兽 2009-12-02
  • 打赏
  • 举报
回复
乍一看,貌似违反了数据库设计规范 尽量只存储单一实体类型的数据

难道你的百分比是非数值类型
vertear 2009-12-02
  • 打赏
  • 举报
回复
你需要这样查询,只能说明你的数据库字段设置有问题 你把年龄和描述分成两个字段,就解决了
junshanhudazhaxi 2009-12-02
  • 打赏
  • 举报
回复
SQL语句里是不可以使用正则表达式的。只能是使用像%_这样的通配符。
但是在asp里的时候你可以根据你的参数生成正确的sql语句例如:参数为:0-50%儿童的情况sql语句为:
--参数为:0-50%儿童
select * from tb_1
where
(
name like '%[1-4][0-9][%]儿童%'
or name like '%[^0-9][0-9][%]儿童%'
or name like '%50[%]儿童%'
)
xfxq 2009-12-02
  • 打赏
  • 举报
回复
是好像不行的。。。不知道用什么办法?
比如我要找儿童。比例在0-50%的都出来。我参数传递过来比如儿童|0-50
没法查这个范围啊。。。
Dogfish 2009-12-02
  • 打赏
  • 举报
回复
正则表达式好像不行。

给个例子,让大家好理解点。
xfxq 2009-12-02
  • 打赏
  • 举报
回复
看来只能分开存储,原料名称和比例分开存放。
CfName 名称1,名称2,名称3
CfCount 25,25,50
xfxq 2009-12-02
  • 打赏
  • 举报
回复
分开存储我也考虑过,但不现实。我的比例后的内容都是原料配方,几十种成分,有些产品可能2种成份,有些可能是50种,分开存储也不是办法。

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧