我在mysql表两列,equipment
和orderno
,这里的设备数量手动插入,以及它们在形式C1234
,C3212
等如何将列值更改为SUB_STRING另一列的值autoatically
我想从equipment
列中去掉C
列,并将剩余的数字插入orderno
列。我看到,mysql substring_index()
可以有效地获取子字符串,但我不知道如何自动执行更改,当equipment
列更改时。
我在mysql表两列,equipment
和orderno
,这里的设备数量手动插入,以及它们在形式C1234
,C3212
等如何将列值更改为SUB_STRING另一列的值autoatically
我想从equipment
列中去掉C
列,并将剩余的数字插入orderno
列。我看到,mysql substring_index()
可以有效地获取子字符串,但我不知道如何自动执行更改,当equipment
列更改时。
你可以使用两个触发器,一个这是一个INSERT之前解雇,一个一个更新之前发射,基于equipment
列自动更新orderno
:
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', '')
那么,到目前为止你有什么? –
创建设备列更新/添加更改时执行的触发器。 检查以下链接: http://stackoverflow.com/questions/4547465/updating-table-in-trigger-after-update-on-the-same-table –