select * from tab where charindex('页',yeshu)>0 and charindex('页',substring(yeshu,charindex('页',yeshu)+1,len(yeshu)))>0  and isnumeric(substring(yeshu,charindex('页',substring(yeshu,charindex('页',yeshu)+1,len(yeshu)))-1,1))=0这么写问题在哪啊?最后一个筛选条件没起作用...

解决方案 »

  1.   

    DECLARE @t TABLE(id INT,data VARCHAR(8000))
    INSERT @t VALUES(1,'第五页中的第三页请看')
    INSERT @t VALUES(2,'第五页中的第3页请看')
    INSERT @t VALUES(3,'第五中的第三页请看')
    INSERT @t VALUES(4,'第五中的第三请看')SELECT *
    FROM @t
    WHERE CHARINDEX('页',data,1)>0
        AND CHARINDEX('页',data,CHARINDEX('页',data,1)+1)>0
        AND LEFT(RIGHT((LEFT(data,CHARINDEX('页',data,CHARINDEX('页',data,1)+1))),2),1) NOT LIKE '[0-9]'
      

  2.   

    好强,我已经发现我的错在哪了,我居然忘了 CHARINDEX 有3个参数,55