一、從mysql截取字元串中的數字
在實際開發中,我們有時需要從mysql的欄位中提取數字。為了實現這個目標,我們可以使用MySQL內置函數SUBSTRING_INDEX和REGEXP_REPLACE。
SELECT SUBSTRING_INDEX(REGEXP_REPLACE(`column_name`, '[^0-9]*', ''), 1) FROM `table_name`;
以上代碼將從table_name
表中的column_name
欄位中提取數字,並將其作為結果返回。
二、從mysql截取特定字元前面的欄位
在mysql中,我們有時需要從欄位中提取某個指定字元(如「:」、「-」等)之前的所有內容。為此,可以使用MySQL內置函數SUBSTRING_INDEX和TRIM。
SELECT TRIM(SUBSTRING_INDEX(`column_name`, ':', 1)) FROM `table_name`;
如上代碼將提取table_name
表中column_name
欄位中冒號「:」之前的所有內容。
三、從mysql截取到特定字元
如果我們需要從mysql欄位中截取到指定字元出現位置的內容,可以使用MySQL內置函數SUBSTRING_INDEX。
SELECT SUBSTRING_INDEX(`column_name`, ':', 1) FROM `table_name`;
如上代碼將提取table_name
表中column_name
欄位中冒號「:」之前的所有內容。
四、從mysql截取指定字元前面的內容
有時候,我們需要從mysql欄位中提取指定字元前面的內容。MySQL內置函數SUBSTRING_INDEX和REPLACE結合起來可以很方便地實現這個目標。
SELECT SUBSTRING_INDEX(REPLACE(`column_name`, '/', '#'), '#', 1) FROM `table_name`;
以上代碼將從table_name
表中的column_name
欄位中找到第一個斜杠「/」,將其替換為「#」,然後提取#號之前的所有內容。
五、從mysql截取中文字元
如果我們需要從mysql欄位中提取中文字元,可以通過將欄位轉換為二進位形式,再使用MySQL內置函數SUBSTRING和CHAR_LENGTH。
SELECT SUBSTRING(`column_name`, 1, CHAR_LENGTH(`column_name`)) FROM `table_name` WHERE LENGTH(`column_name`) = CHAR_LENGTH(`column_name`) * 3;
如上代碼將提取table_name
表中column_name
欄位中的中文字元。
六、從mysql截取字元串前幾位
如果我們需要從mysql欄位中截取前幾位字元,可以使用MySQL內置函數LEFT。
SELECT LEFT(`column_name`, 5) FROM `table_name`;
如上代碼將提取table_name
表中column_name
欄位中的前五個字元。
七、從mysql截取最後一個字元
如果我們需要從mysql欄位中截取最後一個字元,可以使用MySQL內置函數SUBSTRING和LENGTH。
SELECT SUBSTRING(`column_name`, LENGTH(`column_name`), 1) FROM `table_name`;
如上代碼將提取table_name
表中column_name
欄位中的最後一個字元。
八、從mysql根據字元截取字元串
在mysql查詢中,我們有時需要根據某個字元截取一個字元串。可以使用MySQL內置函數LOCATE和SUBSTRING來實現這一目標。
SELECT SUBSTRING(`column_name`, LOCATE('a', `column_name`), LENGTH(`column_name`)) FROM `table_name`;
以上代碼將提取table_name
表中column_name
欄位中第一個字母「a」之後的所有內容。
九、從mysql根據指定字元截取
如果我們需要根據指定字元截取mysql欄位中的字元串,可以使用MySQL內置函數SUBSTRING和LOCATE。
SELECT SUBSTRING(`column_name`, LOCATE('/', `column_name`) + 1) FROM `table_name`;
如上代碼將在table_name
表中的column_name
欄位中查找第一個斜杠「/」,然後提取其後面的所有內容。
十、從mysql截取兩個字元中間的內容
在mysql查詢中,有時候我們需要根據兩個字元間的內容截取mysql欄位。可以使用MySQL內置函數LOCATE和SUBSTRING實現這一目標。
SELECT SUBSTRING(`column_name`, LOCATE('/', `column_name`) + 1, LOCATE('/', `column_name`, LOCATE('/', `column_name`) + 1) - LOCATE('/', `column_name`) - 1) FROM `table_name`;
如上代碼將在table_name
表中的column_name
欄位中查找兩個斜杠「/」之間的內容。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/227273.html