oracle特殊字符转义

SQLでLIKE検索を行う場合、特殊文字として %_があります。
%は任意の文字列で、_は任意の一文字を表わします。
但し、この%もしくは_を含む文字列自体を検索したい場合はLIKE検索時は%もしくは_をエスケープする必要があります。
エスケープするには以下のようにします。

 

SELECT *
FROM EMP
WHERE EMP_ID LIKE '1977@%' ESCAPE '@'

 

LIKE検索のあとにESCAPE '@'とします。@部分は何でもかまいませんが、これは@の後ろの一文字をエスケープします、という意味になります。
ですので、以下のように@でなくてもかまいません。

SELECT *
FROM EMP
WHERE EMP_ID LIKE '1977=%' ESCAPE '='

 

これは、=をエスケープ文字とした場合です。この場合、1977%という文字列がヒットします

posted @ 2008-11-26 15:51  易欧  阅读(1112)  评论(0编辑  收藏  举报