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

sql中的in的有关问题

2012-01-13 
sql中的in的问题比如Request( id )1,2,3,4,5sql select*fromtagwhereTagIDin( &Request( id )&)

sql中的in的问题
'比如Request( "id ")   =   1,2,3,4,5  
sql= "select   *   from   tag   where   TagID   in   ( "   &   Request( "id ")   &   ") "
' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '

这样可以检索出   ID   等于   1或者2....的数据

现在有个问题就是   我   TagID   字段里的数据   是1,2,3,4,5这样

而   request   过来的数据是一个   比如   1  

如何实现   检索   数据库中   TagID   字段   中包含   数字   1   的所有记录呢?

也就是跟引号上面反过来检索的意思   谢谢!

[解决办法]
select * from tag where ( ', '+rtrim(@id)+ ', ', ', '+TagID+ ', ')> 0
[解决办法]
sql= "select * from tag where CharIndex( ', ' + Cast(TagID As Varchar) + ', ', ', ' + ( " & Request( "id ") & " + ', ') > 0 "
[解决办法]
假定:
Request( "id ") = 2
TagID字段的值为 1,2,3,4这样的格式

sql= "select * from tag where ', ' + TagID + ', ' like '%, " & Request( "id ") & ",% ' "
这样就可以实现

格式为:
select * from tag where ', ' + TagID + ', ' like '%,2,% ' "

其中,2,是为了解决1,11,111,这样的问题.

热点排行