首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求解一查询有关问题,多谢

2012-01-28 
求解一查询问题,谢谢!案例分类表:idtypename1一房2复式3别墅4中式5欧典6单身贵族....................案例

求解一查询问题,谢谢!
案例分类表:
id       typename
1         一房
2         复式
3         别墅
4         中式
5         欧典
6         单身贵族
....................
案例信息表:
id         casename             casetype
1           上海花园一期     1,3,6
2           龙祥家园             1,4,5,6
3           静安新城             2,5,6
...........................
其中:casetype数据类型为text
现要求:
比如已知:案例分类id=1,
查询案例信息结果:
1           上海花园一期     1,3,6
2           龙祥家园             1,4,5,6
比如已知:案例分类id=5,
查询案例信息结果:
2           龙祥家园             1,4,5,6
3           静安新城             2,5,6


[解决办法]
select * from tb where charindex( ',1, ' , ', ' + casetype + ', ')
[解决办法]
Create Table TEST
(idInt,
casenameNvarchar(10),
casetypeVarchar(1000))
Insert TEST Select 1, N '上海花园一期 ', '1,3,6 '
Union All Select 2, N '龙祥家园 ', '1,4,5,6 '
Union All Select 3, N '静安新城 ', '2,5,6 '
GO
--方法一
Select * From TEST Where ', '+ casetype + ', ' Like '%,1,% '
--方法二
Select * From TEST Where CharIndex( ',1, ', ', '+ casetype + ', ') > 0
GO
Drop Table TEST
--Result
/*
idcasenamecasetype
1上海花园一期1,3,6
2龙祥家园1,4,5,6
*/

热点排行