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类型
- DECLARE @i int
- SET @i = 123450
- SELECT REVERSE(@i) AS Reversed ;
- GO
- --结果
- 054321
5. REPLACE
用另一个字符串值替换出现的所有指定字符串值。
用第三个表达式替换第一个表达式中出现的所有第二个表达式
语法
REPLACE ( string_expression , string_pattern , string_replacement )