数据库有一个DateFrame char(100)
其中一个数据为:F008FA03C400D08001234B01D8C400CD4E12462500B1C400D080012351008D  
如果我要查找C400CD4E后面数据‘12’,怎么样可以查找?
请求帮助!!                                                                                                                                                                                         

解决方案 »

  1.   

    先查找C400CD4E的位置,然后取后面两位
      

  2.   

    1.declare @index int
    declare @findStr nvarchar(20)
    declare @sourceStr nvarchar(100)
    SET @sourceStr='F008FA03C400D08001234B01D8C400CD4E12462500B1C400D080012351008D'
    set @index = charinde('C400CD4E',@sourceStr)
    2.set @findStr = substring(@sourceStr,@index,2)
      

  3.   

    不是很明白你的意思.是不是这样?
    select * from 表 where 列 like %'C400CD4E12'%
      

  4.   

    我怎么感觉要加上你定位得字符串得长度呢,“C400CD4E”得长度
      

  5.   

    declare @index int
    declare @findStr nvarchar(20)
    declare @sourceStr nvarchar(100)
    SET @sourceStr='F008FA03C400D08001234B01D8C400CD4E12462500B1C400D080012351008D'
    set @index = charindex('C400CD4E',@sourceStr)
    set @findStr = substring(@sourceStr,@index+8,2)
    select @findStr
      

  6.   

    先查出这个数据来再进行字符串截取不行吗?string df="F008FA03C400D08001234B01D8C400CD4E12462500B1C400D080012351008D";
    df=df.substring(df.indexof("C400CD4E"),2)
      

  7.   

    df=df.substring(df.indexof("C400CD4E")+8,2)
    同样的问题。。
      

  8.   

    那有什麼辦法?有時更多的數據量在StoredProcedure中也得逐行逐行的處理
      

  9.   


    select SUBSTRING('F008FA03C400D08001234B01D8C400CD4E12462500B1C400D080012351008D', len('C400CD4E')+charindex('C400CD4E','F008FA03C400D08001234B01D8C400CD4E12462500B1C400D080012351008D'), 2) 这样就可以查出12了,其他的你可以根据需要替换就可以了