UPDATE CRM_SKU AS SK ,
(SELECT SKU_ID, (ROUND(PRICE/10000,1)*10000) 'PRICE' , (ROUND(MEMBER_PRICE/10000,1)*10000)
'MEMBER_PRICE'
FROM CRM_SKU) AS DSK
SET SK.`PRICE` = DSK.`PRICE`,SK.`MEMBER_PRICE` = DSK.`MEMBER_PRICE` WHERE SK.`SKU_ID` = DSK.`SKU_ID`;
背景:数据库存储金额的数值为 金额*10000,工具类转换double保留两位小数。假设数值为14500,则为金额1.45元。某天需求发生改变,要求数据库保存的是1位小数*10000,第二位小数四舍五入,而原来已存入数据库的数值,要求矫正,让14500变成15000。
矫正sql如上