日期:2014-05-19  浏览次数:20448 次

字符串字段内容判断问题
表tableA中有一个varchar类型字段b,b字段内数据格式如下:
13,34,156,2,9,78,134,345,
表中每条记录的b字段内容数据长度、数量不一,格式相同,
如何精确判断某个字符如 "34 "在b字段中?
如果用b   like   '%34% '来判断将不能精确判断其中含有的是34、134还是345
谢谢


------解决方案--------------------
select * from table a where ', '+b like '%,34,% '
------解决方案--------------------
如果格式固定,也就说只有34,134,345前后的字符是固定的还是可以判断的.如果要不是确定.那就没办法了
------解决方案--------------------
Select * From tableA Where ', ' + b + ', ' Like '%,34,% '
------解决方案--------------------
跟ls差不多.
select * from table a where charindex( ', '+b , ',34, ')> 0
------解决方案--------------------
--或者用CharIndex
Select * From tableA Where CharIndex( ',34, ', ', ' + b + ', ') > 0
------解决方案--------------------
select * from tableA where ', ' + b + ', ' like '%,34,% '

------解决方案--------------------
如果b最後面有逗號,就這麼寫

Select * From tableA Where ', ' + b Like '%,34,% '

或者

Select * From tableA Where CharIndex( ',34, ', ', ' + b) > 0

------解决方案--------------------
Select * From tableA Where patIndex( '%,34,% ', ', '+ b+ ', ') > 0

------解决方案--------------------
SELECT * From table WHERE a like '3%[4] '
------解决方案--------------------
xiaoku(野蛮人(^v^)) ( ) 信誉:100 2007-07-30 09:01:03 得分: 0


跟ls差不多.
select * from table a where charindex( ', '+b , ',34, ')> 0


-------------
你好象寫反了。 :)
------解决方案--------------------
Select * From tableA Where patIndex( '%,34,% ', ', '+ b) > 0

這樣才正確


------解决方案--------------------
很多方法,隨便取一種都可以的
------解决方案--------------------
上面的方法都可以