Question:
varchar2±äÁ¿,È硱e\adsfs\dfsa\defff\def¡±,±äÁ¿ÖÐÓжà¸ö¡±\¡±»òÊÇÆäËüÌØÊâ·ûºÅ,ÏÖÐè´ÓÓÒ½âÎö¸Ã×Ö·û,È¡µ½×îºóÒ»¸ö¡±\¡±ºÅµÄ×Ö½Ú·û¡±def¡±.
È«³ÌÁ½¸öº¯Êý:
1)substr:
oracleµÄsubstrº¯ÊýµÄÓ÷¨
È¡µÃ×Ö·û´®ÖÐÖ¸¶¨ÆðʼλÖúͳ¤¶ÈµÄ×Ö·û´® substr( string, start_position, [ length ] )
Èç:
substr(¡®This is a test¡¯, 6, 2) would return ¡®is¡¯
substr(¡®This is a test¡¯, 6) would return ¡®is a test¡¯
substr(¡®TechOnTheNet¡¯, -3, 3) would return ¡®Net¡¯
substr(¡®TechOnTheNet¡¯, -6, 3) would return ¡®The¡¯
ÆäÖиºÊý±íʾ´ÓºóÍùǰÊý.
2)instr
oracleµÄinstrº¯ÊýµÄÓ÷¨¡£
·µ»ØÄ¿±ê×Ö·û´®´ÓÔ´×Ö·û´®³¬Ê¼ÃÇÖóöÏÖÆ¥Åä¸öÊýµÄλÖÃ.
INSTR(Ô´×Ö·û´®, Ä¿±ê×Ö·û´®, ÆðʼλÖÃ, Æ¥ÅäÐòºÅ)
Àý£º
¼ìË÷¡¯RA¡¯ ¡£
INSTR(¡®ORAORASQL ARARA¡¯,'RA¡¯) ¡2
¼ìË÷µÚËĸö×Ö·ûºóÃæµÄµÚ¶þ¸ö¡¯RA¡¯ ¡£
INSTR(¡®ORAORASQL ARARA¡¯,'RA¡¯,4,2) ¡12
¼ìË÷ºóÃæµÚÎå¸ö×Ö·ûÒÔǰµÄ¡¯RA¡¯ ¡£
INSTR(¡®ORAORASQL ARARA¡¯,'RA¡¯,-5,1) ¡5
ÆäÖиºÊý±íʾ´ÓºóÍùǰƥÅä.
Answer:
SELECT substr(¡®af\cdef\erdf\eef¡¯,INSTR(¡®af\cdef\erdf\eef¡¯, ¡®\¡¯, -1, 1)+1) ¡°Instring¡± FROM DUAL