我的mysql表中有两列,equipment
并且orderno
,这里设备号是手动插入的,它们的形式C1234
是C3212
等。
我想剥离C
fromequipment
列并将剩余的数字插入orderno
列。我已经看到 mysqlsubstring_index()
可以有效地获取子字符串,但我不确定如何让它在equipment
列更改时自动进行更改。
您可以使用两个触发器,一个在 INSERT 之前触发,一个在 UPDATE 之前触发,以orderno
根据equipment
列自动更新:
CREATE TRIGGER upd_your_table BEFORE UPDATE ON your_table
FOR EACH ROW
SET new.orderno=substring(new.equipment, 2)
;
CREATE TRIGGER ins_your_table BEFORE INSERT ON your_table
FOR EACH ROW
SET new.orderno=substring(new.equipment, 2)
;
要更新现有值,您可以使用以下命令:
UPDATE your_table SET orderno=substring(equipment, 2)
试试这个 ::
UPDATE myTable set orderno= REPLACE(equipment, 'C', '')