例:去掉KCHS列小数位
select substr(kchsl,1,INSTR(kchsl,'.')-1),t.kchsl from t_tms_bu_order t where KCHSL like '%.%';
1.查询KCHSL 列包含小数的列 where KCHSL like '%.%';;
2.通过INSTR()获取小数点出现的位置 INSTR(kchsl,'.');
3.通过substr(),截取整数部分 substr(kchsl,1,INSTR(kchsl,'.')-1);
4.批量更新数据
update t_tms_bu_order set kchsl = substr(kchsl,1,INSTR(kchsl,'.')-1)where KCHSL like '%.%';
INSTR函数用法
INSTR(string, substring)
string 是要搜索的主字符串。
substring 是要查找的子字符串。
1.基本用法:
SELECT INSTR('Hello World', 'World'); -- 返回 7
2.子字符串不存在:
SELECT INSTR('Hello World', 'SQL'); -- 返回 0
3.在更新操作中的应用:
UPDATE t_tms_bu_order
SET kchsl = SUBSTR(kchsl, 1, INSTR(kchsl, '.') - 1)
WHERE kchsl LIKE '%.%';
这里 INSTR(kchsl, '.') 找到 kchsl 列中第一个小数点的位置,以此截取小数点前的部分。