# table schema
CREATE TABLE `ref_str` (
`ref_id` int(11) DEFAULT NULL,
`ref_str` varchar(4096) DEFAULT NULL,
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
这是当前数据:
+--------+--------------------+
| ref_id | ref_str |
+--------+--------------------+
| NULL | [5] www.NCCN.com |
| NULL | [4] www.nhc.gov.cn |
| NULL | [14] www.hc.gov.cn |
| NULL | [146] someh.gov.cn |
+--------+--------------------+
我想反复地插入ref_id
列中的int值内[]
的ref_str
同一行。
结果应如下所示:
+--------+--------------------+
| ref_id | ref_str |
+--------+--------------------+
| 5 | [5] www.NCCN.com |
| 4 | [4] www.nhc.gov.cn |
| 14 | [14] www.hc.gov.cn |
| 146 | [146] someh.gov.cn |
+--------+--------------------+
我正在使用MySQL 5.7.32。
谢谢。
UPDATE ref_str
SET ref_id = 0 + TRIM(LEADING '[' FROM ref_str);
首先,我们删除前支架。然后,我们将值隐式转换为数字-只需截断非数字尾部。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句