日期:2014-05-17  浏览次数:20537 次

SQL语句查询一个商品有多种分类的语句
如题,在做一个商品(shop)和商品分类(shopclass)表的时候,
商品表里面有个字段是商品分类,有多个分类,以ID(int)加逗号隔开,如何查询商品分类ID为1的商品?
能不用like吗?

数据库结构如下.


------解决方案--------------------
即使用like你也不可以直接查,不然11都会被你给整出来
SQL code

declare @t table(x varchar(100))
insert into @t values ('1,2,3,4,5,6,7,8')
insert into @t values ('2,3,4,5,6,7,8,11')
insert into @t values ('2,3,4,5,6,7,8')
select * from @t where ','+x+',' like '%,1,%';
select * from @t where patindex('%,1,%',','+x+',')>0;