1. 程式人生 > >mysql(substring函數,contact函數以及replace函數的使用)

mysql(substring函數,contact函數以及replace函數的使用)

ldp 截取 update 新的 map con test substr new

下面講到的語法,當時的使用場景是要移動樹中的節點時,要修改該節點以及其子節點的所有父節點(parentids)。

<update id="uptParentId" parameterType="map">
update trainstaff_dept set parentids = replace(parentids,#{oldPId},#{newPId}) where companyid=#{companyId}
<if test="null!=Id"> and id=#{Id} </if>
</update>

<update id="uptParentIds" parameterType="map">
update trainstaff_dept set parentids=concat(#{newPId},substring(parentids,#{length}+1)) where substring(parentids,1,#{length})=#{oldPId} and companyid=#{companyId};
</update>

substring(filed,m):截取filed字段從第m個字符開始到結束的字符串;

substring(filed,m,n):截取filed字段從第m個字符開始的長度為n的字符串;

cancat(string1,sting2,……):將string1、string2, ……字符串連接起來。

replace(parentids,#{oldPId},#{newPId})

parentids:需要替換的字段

oldPId:老的字符串

newPId:新的字符串

mysql(substring函數,contact函數以及replace函數的使用)