传入一个字符str,例如
'00001000020000400003'
凡是表t_ip_doc中path字段的内容属于传入字符的前部分(类似path+'%' like str)既为符合条件的数据
例如:00001,00000100002,000010000200004这样的例子可以在oracle中实现:
select * from t_ip_doc where str like path||'%';其中||属于oracle方言,意义表示连字符号
但是在mysql中就不行,希望哪位高手帮忙哈

解决方案 »

  1.   


    declare @str varchar(100)select @str = '00001000020000400003'
    select * from t_ip_doc where charindex(path,@str)>0
      

  2.   

    ---例子
    create table tt(id int,name varchar(100))
    insert tt select 1,'00001'
    union all select 2,'0000100002'
    union all select 3,'000010000200004'
    go
    declare @str varchar(100)
    select @str = '00001000020000400003'
    select * from tt where charindex([name],@str)>0
      

  3.   

    忘记了,补充一下~~~我要求的检索出来的内容比'%path%'内容范围小,条件是'path%',也就是说,前面部分相似,不仅仅是包含就可以了~~~
    例子
    例子:
    path字段中的数据:a,ab,abc,abcd,b,bc,bcd,cd
    如果我输入的字符为abcdef,那么,只有:a,ab,abc,abcd被检索出来了,其他的都是不符合条件的
    所以上面的程序应该还不可以~~~