欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SQL的substring_index()用法實例(MySQL字符串截取)

 更新時間:2023年01月13日 09:35:15   作者:小白修煉晉級中  
substring_index?(字符串,分隔符,序號),主要作用是用于截取目標字符串,下面這篇文章主要給大家介紹了關于SQL中substring_index()用法(MySQL字符串截取)的相關資料,需要的朋友可以參考下

1.substring_index函數(shù)的語法及其用法

(1)語法:substring_index(string,sep,num)

即substring_index(字符串,分隔符,序號)

參數(shù)說明

string:用于截取目標字符串的字符串??蔀樽侄?,表達式等。

sep:分隔符,string存在且用于分割的字符,比如“,”、“.”等。

num:序號,為非0整數(shù)。若為整數(shù)則表示從左到右數(shù),若為負數(shù)則從右到左數(shù)。比如“www.mysql.com”截取字符‘www’,分割符為“.”,從左到右序號為1,即substring_index("www.mysql.com",'.',1);若從右開始獲取“com”則為序號為-1即substring_index("www.mysql.com",'.',-1)

(2)用于截取目標字符串。

2.實例

(1)從某字段截取目標字符串。

例:現(xiàn)有一個學生信息表student,詳細地址address儲存省、市、縣等由逗號隔開的地址信息,比如“XX省,XX市,XX區(qū),...,XXX號”。由于某種原因沒有學生所在省信息需要獲取,同時獲取學生姓名name,性別sex,年齡age。

select name,sex,age,
substring_index(address,',',1) as province
from student

(2)與cast函數(shù)結(jié)合使用截取某字符串并轉(zhuǎn)為目標格式。

例:現(xiàn)有一張訂單信息data,由于2022-03-04日期 之后存儲日期信息的格式出錯,日期前加了一些前綴,并用空格隔開,比如“13d 2022-02-01”,需要獲取該表2022-03-04之后具體日期信息,同時獲取單子offer_id,以及產(chǎn)品名name。

select cast(substring_index(ctime,' ',1) as date) as dt,
offer_id,name    
FROM data
WHERE substring_index(ctime,' ',1)>= '2022-03-04'

附:結(jié)合group_concat(),把多條記錄回顯到一條,再做分割

比如一個用戶可以維護多條學歷信息記錄,現(xiàn)在這個人維護了一所本科院校,倆所研究生院校,一所博士院校,現(xiàn)需要展示最高的一個學校,或者需要展示出所有的研究生院校。

/*研究生畢業(yè)院校*/
IF(
    SUBSTRING_INDEX(
        GROUP_CONCAT( 
            CASE 
            WHEN a02.R0205 = '11' //表示研究生
                THEN a02.R0203 
                ELSE ',' 
            END 
            ORDER BY a02.R0205, a02.R0206 
        ),
        ',',
        2
    ) = ','  // 如果沒有
    ,'',     // 返回空,否則,返回下面語句
    SUBSTRING_INDEX(
        GROUP_CONCAT( 
            CASE 
            WHEN a02.R0205 = '21' 
                THEN a02.R0203 
            END 
            ORDER BY a02.R0205, a02.R0206 
        ),
    ',',
    2)
) AS dxbyyx,

結(jié)果:

中國人民大學,清華大學

SQL的cast函數(shù)用法可參考SQL的CAST()——轉(zhuǎn)換數(shù)據(jù)類型

總結(jié)

到此這篇關于SQL的substring_index()用法的文章就介紹到這了,更多相關SQL substring_index()用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • mysql中時間字段設置遇到的問題

    mysql中時間字段設置遇到的問題

    這篇文章主要介紹了mysql中時間字段設置遇到的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • MySQL學習第二天 安裝和配置mysql winx64

    MySQL學習第二天 安裝和配置mysql winx64

    MySQL學習第二天,主要為大家詳細介紹了在Windows 64位操作系統(tǒng)下安裝和配置MySQL的具體步驟,整理一份mysql winx64安裝配置方法教程,感興趣的小伙伴們可以參考一下
    2016-05-05
  • MySQL存儲引擎MyISAM與InnoDB的9點區(qū)別

    MySQL存儲引擎MyISAM與InnoDB的9點區(qū)別

    這篇文章主要介紹了MySQL存儲引擎MyISAM與InnoDB的9點區(qū)別,寫給有選擇困難癥的同學,需要的朋友可以參考下
    2014-08-08
  • MySQL中WITH?AS語句的使用方法舉例

    MySQL中WITH?AS語句的使用方法舉例

    在MySQL中WITH AS語法用于創(chuàng)建一個臨時的命名查詢(也稱為子查詢),這些子查詢可以在后續(xù)的查詢中引用,從而簡化查詢語句的編寫,這篇文章主要給大家介紹了關于MySQL中WITH?AS語句的使用方法,需要的朋友可以參考下
    2024-06-06
  • MySQL判斷列的值既不為NULL又不為空字符串的問題

    MySQL判斷列的值既不為NULL又不為空字符串的問題

    這篇文章主要介紹了MySQL判斷列的值既不為NULL又不為空字符串的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • MYSQL設置字段自動獲取當前時間的sql語句

    MYSQL設置字段自動獲取當前時間的sql語句

    整理數(shù)據(jù)庫數(shù)據(jù),看到好多表都有加create_time和 update_time字段,來記錄數(shù)據(jù)插入的時間和更新時間,但是時間插入是通過代碼來維護的,這篇文章主要介紹了MYSQL設置字段自動獲取當前時間,需要的朋友可以參考下
    2023-07-07
  • 最新版MySQL5.7.19解壓版安裝指南

    最新版MySQL5.7.19解壓版安裝指南

    這篇文章主要介紹了最新版MySQL5.7.19解壓版安裝指南,需要的朋友可以參考下
    2017-08-08
  • MySQL表的增刪改查基礎教程

    MySQL表的增刪改查基礎教程

    這篇文章主要給大家介紹了關于MySQL表的增刪改查的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • mysql下修改engine引擎的方法

    mysql下修改engine引擎的方法

    修改mysql的引擎為INNODB,可以使用外鍵,事務等功能,性能高。
    2011-08-08
  • MySQL的表約束的具體使用

    MySQL的表約束的具體使用

    本文主要介紹了MySQL的表約束,通過合理地使用 NOT NULL、UNIQUE、PRIMARY KEY、FOREIGN KEY 和 CHECK 約束,可以有效防止錯誤數(shù)據(jù)進入數(shù)據(jù)庫,感興趣的可以了解一下
    2024-07-07

最新評論