一个商城,商品表的字段A,该字段下储存了多个数据,比如说颜色、尺寸。颜色可能是多个、尺寸也可能是多个。
该字段的值如下:a:1,2,3;b:4,5,6;
说明下,a表示颜色、1,2,3表示值,同样的b表示尺寸,4,5,6表示值。我现在要筛选,比如说,我要显示颜色值为3的。怎么办?怎么筛选?(PS:C#、数据库为MSSQL)各位有嘛主意和想法的还请指点一二,非常感谢哈。
该字段的值如下:a:1,2,3;b:4,5,6;
说明下,a表示颜色、1,2,3表示值,同样的b表示尺寸,4,5,6表示值。我现在要筛选,比如说,我要显示颜色值为3的。怎么办?怎么筛选?(PS:C#、数据库为MSSQL)各位有嘛主意和想法的还请指点一二,非常感谢哈。
解决方案 »
- asp.net登陆后总是被重新定位到登陆界面
- IIS问题??附图
- 一般的OA有哪些功能模块
- !!未解决CheckBox问题!!没分了不好意思
- 10分求助:web.config里的一个小错误!是关于连接数据库的。。。。。
- 关于调用javascript函数的问题,高手求教!!!up给分
- ado的问题
- 急求使用ctrl+Enter直接发表贴子的asp.net源代码
- 急:Windows 2000 Server的用戶等入密碼存在哪個文件?
- 急难:win中webBrowser可以调用web中的javascript,但怎么调用web框架集中子框架(frame)的javascript?
- 求:员工距离下一个生日的天数
- asp.net模板页如何在不同级中调用
是按顺序保存的话先查出这个字段,然后用split(";")拆分成字符串数组,这样一个字符串就对应一项数据了
然后对每个字符串再用split(",")拆分出里面的数据
(f1 varchar(100) not null)insert into test values('a:1,2,3;b:4,5,6;')
insert into test values('a:1,2;b:4,5,6;')
insert into test values('a:2,3;b:5,6;')select * from test where charindex('3',f1)>0
drop table test
被查找的或者在a的头,或者在a尾,或者在a中间对这3种情况用dbo.RegexMatch正则表达来查询.where dbo.RegexMatch(A, N'.+a:3,.+')=0
OR dbo.RegexMatch(A, N'.+a:.+,3;.+')=0
OR dbo.RegexMatch(A, N'.+a:.+,3,.+')=0当然在a头的用LIKE也可以