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