例子:table abc
列  a     b
  123    12
  2555    3
要求查询出a字段包含b字段的每条数据
是不是select * from abc where a like '%'+b+'%'
求大神指教啊

解决方案 »

  1.   

    select * from abc where CHARINDEX(a,b,0)>0
      

  2.   

    纠正下:
    select * from abc where CHARINDEX(b,a,0)>0 
      

  3.   

    我换个方法SELECT  *
    FROM    abc
    WHERE   a LIKE '%' + ( SELECT   b
                           FROM     abc
                         ) + '%'
      

  4.   

    纠正下:
    select * from abc where CHARINDEX(b,a,0)>0  括号里的0是什么意思啊
      

  5.   

    你先查查联机丛书的charindex函数的用法咯
      

  6.   

    怎么报错说charindex无效字符的啊
      

  7.   

    我是这么写的
    select * from t_grp_org where CHARINDEX(gid,nodepath,0)>0
      

  8.   

    第二种方法也没用,在‘%’处报无效字符
    select * from t_grp_org where nodepath like '%'+(select gid from t_grp_org)+'%'
      

  9.   

    不清楚版本是多少啊,最好能有种通用的sql语句啊,好难搞啊,我sql只会基本的select,update,del
      

  10.   

    我说你的是2000还是05以上,用查询分析器的就是2000,用ssms的就是05以上。
      

  11.   

    2000 也是支持的,是不是gid 不是字符类型啊?
    如果是 请改:
    select * from t_grp_org where CHARINDEX(cast(gid as varchar(20)),nodepath,0)>0
      

  12.   

    SELECT  a.*
    FROM    TB a,TB b
    WHERE   a.a列 LIKE '%' +b.b列+'%'
      

  13.   

    报charindex标示符无效,什么意思啊
      

  14.   

    改一下表名
    SELECT  a.*
    FROM    abc a ,
            abc b
    WHERE   a.a LIKE '%' + B.b + '%'
      

  15.   

    create table T_GRP_ORG
    (
      GID                 NUMBER not null,
      GNAME               VARCHAR2(255) not null,
      ORGABBR             VARCHAR2(255) not null,
      ORGSPELL            VARCHAR2(255),
      SUPID               NUMBER not null,
      LEVELS              NUMBER not null,
      NODEPATH            VARCHAR2(255),
      DESCRIPTION         VARCHAR2(400),
      CONTACT             VARCHAR2(255),
      PHONE               VARCHAR2(64),
      UNMALLOCEDIPSETFLAG VARCHAR2(1) default 0
    )
      

  16.   

    不是mysql,下班,回去没人回复我再回复
      

  17.   

    oracle啊,大神们,我不是做sql的,做java的,这sql搞死我了,各路大神救救急
      

  18.   

    怎么发mssql里了 南辕北辙啊 兄弟
      

  19.   

    select a, b 
    from abc 
    where a like ('%' || b || '%')
    ----------------------------------------------
    select ORGABBR, ORGSPELL
    from T_GRP_ORG  
    where ORGABBR like ('%' || ORGSPELL || '%')