表中有一字段A,表名B
SQL:SELECT * FROM B
A的值为kk***bb
想用SQL语句,取出kk***后的BB值出来。
***为分隔符。***的位置不固定。

解决方案 »

  1.   

    不知道是不是这个意思:
    select REPLACE(A,'kk***','') from B Where ....
      

  2.   

    select right(A,2) From B where left(A,2) = 'kk'
    mssqlserver kk和bb固定长度的话
      

  3.   

    select gg,substring(gg,charindex('-',gg)+1,len(gg)- charindex('-',gg))from baseinfo
    -代表分割符
      

  4.   

    select RIGHT (字段A , 2) 你那KK,BB是不是表示两个字符和位置呀?
      

  5.   

    select gg,substring(gg,charindex('***',a)+1,len(a)- charindex('***',a))from b也可以使用right,首先用charindex取得分隔符的位置
      

  6.   

    wudi_1982(︻┳═一酒可千日不饮,但不可一饮不醉) 的对!
      

  7.   

    上面没改完全,那时我机器上的,你的要这么写,把GG改成A
    select a,substring(a,charindex('***',a)+1,len(a)- charindex('***',a))from b
      

  8.   

    select a,substring(a,charindex('***',a)+3,len(a)- charindex('***',a))from b
    楼上的楼上有个小小的错误 是 +3 而不是 +1
    不过这样如果有几个数据存放在一起了,就需要另做处理了
      

  9.   

    晕,还用得着那么麻烦吗?select * form tablename where a like 'KK%BB'