我正在构建一些应用程序,它连接到 mysql 数据库。
在 mysql 中的 let say 表中test
,我有一个 Integer 字段,名为myId
.
我的第一次插入 myId 值“1”被添加,第二次插入我添加值“20”。
现在我的问题是:有没有可能,第二次插入后的第一个值“1”将自动添加“0”。
所以我会有:
|myId|
10
20
如果添加“300”,那么前两个插入将添加下一个 0 ?
|myId|
100
200
300
我正在构建一些应用程序,它连接到 mysql 数据库。
在 mysql 中的 let say 表中test
,我有一个 Integer 字段,名为myId
.
我的第一次插入 myId 值“1”被添加,第二次插入我添加值“20”。
现在我的问题是:有没有可能,第二次插入后的第一个值“1”将自动添加“0”。
所以我会有:
|myId|
10
20
如果添加“300”,那么前两个插入将添加下一个 0 ?
|myId|
100
200
300
只需在选择数据时执行此操作
set @max:=(select max(length(myId)) from your_table);
SELECT myId * power(10, (@max - length(myId))) from table;
未经证实:
delimiter |
CREATE TRIGGER upd_entries AFTER INSERT ON your_table
FOR EACH ROW
BEGIN
update your_table
set myId = myId * power(10, ((select * from (select max(length(myId)) from your_table)) - length(myId)));
END;
|
delimiter ;