SELECT * FROM Exam WHERE ActName like '%决定%';
SELECT * FROM Exam WHERE ActName like '%决定';
在Oracle中,第一条不能查出数据,第二每次能查询出数据.
这是怎么回事,有什么解决的方法 .
补充下:ActName是Clob类型的. 

解决方案 »

  1.   

    对clob的字段进行like??没有用过!期待高手
      

  2.   

    关于Clob,我不是很清楚,关于lz的两个like,第一句查询的是包含“决定”的记录,但是“决定”的前后都要有别的字符,而第二句,查询的是“决定”结尾的记录,也就是后面没有别的字符的。比如“我决定辞职”,用第一种能查到,第二种不能;而“你来做决定”用第一种查不到,第二种能。
      

  3.   

    恐怕是你的clob字段没有怡’决定‘的数据吧
      

  4.   

    恐怕是你的clob字段没有以'决定'结尾数据吧
      

  5.   

    %不能匹配0个字符吗?
    貌似SQL Server里面是可以在,在Oracle中其它数据类型也是可以的.我测试过number类型的数据是可以用%代表空字符的,又如查询的时候 '%%' 在两个百分号里什么都不写,可以查询全部内容.现在问题是在Clob中不能使用%匹配结束.郁闷中啊..才开始搞Oracle,,,学识浅薄.CLob难道不能用Like,,貌似查询是可以但非常的卡.
      

  6.   


    嗯,测试了一下,确实用这个函数比like要好得多,非常感谢.