Oracle中INSTR函数与SQL Server中CHARINDEX函数


  1. Oracle中INSTR函数与SQL Server中CHARINDEX函数  
  2.   
  3. 1.ORACLE中的INSTR  
  4. INSTR函数格式:INSTR(源字符串, 目标字符串, 起始位置, 匹配序号)   
  5. 说明:返回从 ‘起始位置’ 开始查找 ‘源字符串’ 中与 ‘目标字符串’ 第 ‘匹配序号’ 次匹配的位置  
  6. 例如:返回从第4位字符开始SQL_Server_2008字符串中第2次出现字符串er的位置  
  7. select INSTR('SQL_Server_2008','er',4,2 ) as result from dual;  
  8. 结果:9  
  9.   
  10.   
  11.   
  12. 2.SQL Server中的CHARINDEX  
  13. CHARINDEX函数格式:CHARINDEX( targetStr , srcStr [,start_location ] )  
  14. 说明:返回目标字符(串)在源字符串字符串中出现的起始位置  
  15. select CHARINDEX('er','SQL_Server_2008',10) ;  
  16. 结果:0   
  17. select CHARINDEX('er','SQL_Server_2008',7) ;  
  18. 结果:9   
  19. select CHARINDEX('er','SQL_Server_2008') ;  
  20. 结果:6   
  21. 返回结果说明:返回0说明没有查找到符合条件的字符(串)  

 

想要使用SUBSTR函数和INSTR函数截取目标字段:

SUBSTR(a.DM,5,INSTR(DM||'-','-'))

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM