"字段5"的值为:xxx.xx.8888.xx.xx,我要取出8888和另一字段(字段8)比较,这条select语句该怎么写?
“select * from table1 where  ??? ”多谢!马上结贴.

解决方案 »

  1.   

    select * from table1 where substring(字段5,7,4)=字段6
      

  2.   

    LZ: xxx.xx.8888.xx.xx是什么意思.特别是中间的"." 
    如果字段5"的值为:可表示为:1234588881234还是123.45.8888.12.34
      

  3.   

    select * from table1 where substring(字段5,8,4)=字段8
      

  4.   

    LZ: xxx.xx.8888.xx.xx是什么意思.特别是中间的"."  
    如果字段5"的值为:可表示为:1234588881234还是123.45.8888.12.34
    ==========================================================
    xxx可能是字符串,也可能是数字,"."就是小数点.
      

  5.   

    select * from table1 where 字段5 like '%.%.'+字段8+'.%.%'
      

  6.   

    sprc_lcl 
    cool一生 
    等 级:
     发表于:2007-10-11 18:24:307楼 得分:0 
    select * from table1 where 字段5 like  '%.%. '+字段8+ '.%.% 
     是不是得需要保证字段8也是字符类型吧
      

  7.   

    晕,不是字符串就加个函数好了
    select * from table1 where 字段5 like  '%.%. '+ltrim(字段8)+ '.%.% '
      

  8.   

    谢谢各位,因为特殊原因,必须要取得这个值,所以也不能简单的like。求解决方法。
      

  9.   

    select * from table1 where 字段5 like   '%.%.  '+ltrim(字段8)+  '.%.%  '
    应该可以满足LZ的要求;但可以写得更简便些:
    select * from table1 where 字段5 like   '%.'+convert(varchar,字段8)+  '.% '
      

  10.   

    谢谢各位,因为特殊原因,必须要取得这个值,所以也不能简单的like。 
    ----------------------------------------------------------
    select * from table1 where 字段5 like    '%. '+convert(varchar,(select 字段8 from 表 where 条件))+   '.%  ' 
      

  11.   

    最好给出你相关表的结构,以及预期的效果;方便写SQL语句...
      

  12.   

     where substring(substring(substring(字段5,charindex('.',字段5)+1,length(字段5)-charindex('.',字段5)),charindex('.',substring(字段5,charindex('.',字段5)+1,length(字段5)-charindex('.',字段5)))+1,length(substring(字段5,charindex('.',字段5)+1,length(字段5)-charindex('.',字段5)))-charindex('.',substring(字段5,charindex('.',字段5)+1,length(字段5)-charindex('.',字段5)))),1,charindex('.',substring(substring(字段5,charindex('.',字段5)+1,length(字段5)-charindex('.',字段5)),charindex('.',substring(字段5,charindex('.',字段5)+1,length(字段5)-charindex('.',字段5)))+1,length(substring(字段5,charindex('.',字段5)+1,length(字段5)-charindex('.',字段5)))-charindex('.',substring(字段5,charindex('.',字段5)+1,length(字段5)-charindex('.',字段5)))))-1)=字段8看着晕不?????
      

  13.   

    可以取出这个字段值 在程序里处理
    假设字段值为 string a = "xxx.xx.8888.xx.xx"
    string[] b = a.split(".")
    那么8888就是string[2],其他字符也可以取到进行处理
      

  14.   

    WHERE substring(字段5,(charindex(字段5,'.')+1),(len(字段5)-charindex(字段5,'.')-1)) = 字段8;这个看起来是对的,为什么就是不行呢?结果应该有值的,我就拿了两条记录做例子。
      

  15.   

    具体的没怎么看,但可以肯定的是charindex(字段5, '. ')应该写为:charindex( '.',string)
      

  16.   


     like "___.__.8888.__.__"
      

  17.   

    向 sprc_lcl 学到了一些东西