SQL替換字符串值的5種常用方法
前言
sql中的替換分為三種:1、查詢替換;2、更新替換;3新增替換;
下面5個方法函數(shù)主要用于實現(xiàn)查詢替換,當(dāng)然update更新也是同樣道理
常用替換函數(shù)
1、COALESCE()
#需求:當(dāng)BH_UL_PRBUSE_RATE字段 為null值的時候,將返回0, # 否則將返回BH_UL_PRBUSE_RATE的真實值 COALESCE(BH_UL_PRBUSE_RATE,0) as BH_UL_PRBUSE_RATE
2、decode()
#需求:當(dāng)數(shù)據(jù)中status值為01或02時返回0,否則返回1: #例子:decode(STATUS,'01',0,'02',0, 1) decode(字段,null,'-',字段) as 別名
3、NVL()
#空值轉(zhuǎn)換函數(shù), #如果表達式1為空值,NVL返回值為表達式2的值,否則返回表達式1的值 NVL(字段,0) as 別名
4、replace()
#直接替換字符串中的部分字符
replace(字段,'a','88') as text
例子:
如果字段值為'abc' 則返回值text是'88bc'5、case when
#類似JAVA中的IF ELSE語句
case when 字段 is null then '--' else then 字段本身 END as 別名
例子:
case 字段
when 'aa' then 'Y'
when 'cc' then 'N'
end as text
如果字段值為'aa' 則返回值text是'Y';如果字段值為'cc' 則返回值text是'N'附:replace函數(shù)的語法及其用法
即replace(字符串,被替代字符,替代字符)
參數(shù)說明
string:目標(biāo)字符串,需要進行調(diào)整操作的字符串??蔀樽侄危磉_式等。
replaced_string:被替代字符串,可為字符,比如“,”、“.”、“{”等。
replace_string:替代字符,為目標(biāo)替代的字符,若不填字符表示刪掉replaced_string。比如將“www.mysql.com”中的字符‘.’替代為“,”,即replace("www.mysql.com",'.',',');若直接刪掉‘my’則為replace("www.mysql.com",'.','')
例:現(xiàn)有一個學(xué)生信息表student,想要將籍貫birth_place中的“省”字刪掉。由于某種原因沒有學(xué)生所在省信息需要獲取,同時獲取學(xué)生姓名name,性別sex,年齡age。
select name,sex,age, replace(birth_place,'省','') as birth_place from student
總結(jié)
到此這篇關(guān)于SQL替換字符串值的5種常用方法的文章就介紹到這了,更多相關(guān)SQL替換字符串值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL中時區(qū)參數(shù)time_zone解讀
MySQL時區(qū)參數(shù)time_zone用于控制系統(tǒng)函數(shù)和字段的DEFAULT CURRENT_TIMESTAMP屬性,修改時區(qū)可能會影響timestamp類型的值,建議在MySQL配置文件中設(shè)置時區(qū)參數(shù),以確保高并發(fā)時的性能,在業(yè)務(wù)中盡量使用datetime類型來存儲時間,因為其時間上限比TIMESTAMP更遠2025-01-01
MySQL實現(xiàn)批量檢查表并進行repair與optimize的方法
這篇文章主要介紹了MySQL實現(xiàn)批量檢查表并進行repair與optimize的方法,結(jié)合實例形式分析了MySQL批量修復(fù)與優(yōu)化表的相關(guān)技巧,需要的朋友可以參考下2016-04-04
超詳細mysql left join,right join,inner join用法分析
比較詳細的mysql的幾種連接功能分析,只要你看完就能學(xué)會的好東西2008-08-08
解析:內(nèi)聯(lián),左外聯(lián),右外聯(lián),全連接,交叉連接的區(qū)別
本篇文章是對內(nèi)聯(lián),左外聯(lián),右外聯(lián),全連接,交叉連接的區(qū)別進行了詳細的分析介紹,需要的朋友參考下2013-07-07
mysql中的事務(wù)重做日志(redo log)與回滾日志(undo log)
這篇文章主要介紹了mysql中的事務(wù)重做日志(redo log)與回滾日志(undo log),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-05-05
MySQL高效模糊搜索之內(nèi)置函數(shù)locate instr position find_in_set使用詳解
在MySQL中一般進行模糊搜索都是使用LIKE配合通配符進行查詢的,在性能上一定的影響,下面給大家分享MYSQL自帶的內(nèi)置模糊搜索函數(shù),除最后一個外其它三個性能上要比Like快些2018-09-09

