sql 截取字符以及按特殊字符截取(C:\abc\detg\geg.jpg)


Sql Server:
SELECT SUBSTRING('abcdefg',2,5)
结果 bcdef

Oracle :
SELECT SUBSTR('abcdefg',2,5) FROM DUAL
结果 bcdef

 

截取类型这样的字符C:\abc\detg\geg.jpg

方法看下面的链接:

http://www.360doc.com/content/12/0626/13/1912775_220523992.shtml

 

相关知识:

1.sql STUFF用法

http://www.cnblogs.com/345563452/archive/2009/10/29/1592048.html

2.SQL语句中返回子串在字符串中位置的函数  CHARINDEX

http://blog.163.com/lzx2000%40126/blog/static/4839114720103842524227/

sql :charindex('字符串',字段)>0                      charindex('administrator',MUserID)>0

oracle:instr(字段,'字符串',1,1) >0                   instr(MUserID,'administrator',1,1)>0        

oracle:instr(字段,'字符串') >0

其语法为:
Instr(string, substring, position, occurrence)
其中

string:代表源字符串;

substring:代表想聪源字符串中查找的子串;

position:代表查找的开始位置,该参数可选的,默认为 1;

occurrence:代表想从源字符中查找出第几次出现的substring,该参数也是可选的,默认为1;
如果 position 的值为负数,那么代表从右往左进行查找。
返回值为:查找到的字符串的位置。

 

3.sql left

取一个字符串的前若干位
select left('abcdefg', 3)
输出: abc

4.reverse返回字符串值的逆向值。如果其他类型使用reverse函数,系统会先转换成字符类型然后再使用reverse函数。

  • DECLARE @myvar varchar(10)  
  • SET @myvar = 'sdrawkcaB'  
  • SELECT REVERSE(@myvar) AS Reversed ;    
  • --结果   
  • Backwards 

int类型

  1. DECLARE @i int  
  2. SET @i = 123450  
  3. SELECT REVERSE(@i) AS Reversed ;  
  4. GO  
  5. --结果   
  6. 054321  

5. REPLACE

用另一个字符串值替换出现的所有指定字符串值。

用第三个表达式替换第一个表达式中出现的所有第二个表达式

语法

REPLACE ( string_expression , string_pattern , string_replacement )


免责声明!

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



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