MySQL 數據的 截取,數據清洗


Mysql字符串截取函數SUBSTRING的用法說明
函數: 
1、從左開始截取字符串 
left(str, length) 
說明:left(被截取字段,截取長度) 
例:select left(content,200) as abstract from my_content_t 
2、從右開始截取字符串 
right(str, length) 
說明:right(被截取字段,截取長度) 
例:select right(content,200) as abstract from my_content_t 
3、截取字符串 
substring(str, pos) 
substring(str, pos, length) 
說明:substring(被截取字段,從第幾位開始截取) 
substring(被截取字段,從第幾位開始截取,截取長度) 
例:select substring(content,5) as abstract from my_content_t 
select substring(content,5,200) as abstract from my_content_t 
(注:如果位數是負數 如-5 則是從后倒數位數,到字符串結束或截取的長度) 
4、按關鍵字截取字符串 
substring_index(str,delim,count) 
說明:substring_index(被截取字段,關鍵字,關鍵字出現的次數) 
例:select substring_index("blog.jb51.net","。",2) as abstract from my_content_t 
結果:blog.jb51 
(注:如果關鍵字出現的次數是負數 如-2 則是從后倒數,到字符串結束) 
函數簡介:

SUBSTRING(str,pos) , SUBSTRING(str FROM pos) SUBSTRING(str,pos,len) , SUBSTRING(str FROM pos FOR len)

不帶有len 參數的格式從字符串str返回一個子字符串,起始於位置 pos。帶有len參數的格式從字符串str返回一個長度同len字符相同的子字符串,起始於位置 pos。
使用 FROM的格式為標准 SQL 語法。也可能對pos使用一個負值。假若這樣,則子字符串的位置起始於字符串結尾的pos 字符,而不是字符串的開頭位置。在以下格式的函數中可以對pos
使用一個負值。

  

使用示例:

  數據表中的pubTime 列的時間格式我們只想去年月日,去掉時分秒,如果實現呢

UPDATE yjgl_toutiao_1_history SET pubTime=SUBSTRING(pubTime,1,10) WHERE LENGTH(pubTime)>12

 一個sql語句就實現了這個功能,強大不?

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM