只是问这是否可行:
我有一个mysql数据库'数据'和一个列'计数'其中包含
等数字 3741年 49215我想知道是否有可能删除此列中每个数字的最后一个数字,因此会有以下值:
374
4921
34
468679
(对于100,000行,所以我不能手动完成:))
谢谢!
答案 0 :(得分:1)
如果字段是数字或字符串并且始终是>这将起作用。 0:
UPDATE `table` SET `count` = FLOOR(`count`/10)
注意单个数字值将变为0
如果某些数字为负数,则无法给出正确的答案,而其他答案的子字符串方法则更好。
答案 1 :(得分:0)
使用MySQL SUBSTRING函数提取字符串的一部分。使用CHAR_LENGTH函数计算字符串中的字符数。
SELECT
col,
SUBSTRING(col, 1, CHAR_LENGTH(col) - 1) AS col_trimme
FROM tbl
答案 2 :(得分:0)
是数据类型是字符串,你可以
update my_table
set my_column = substr(my_column, 1, length(my_column) -2)
如果是一个int你可以施放
update my_table
set my_column = cast(substr(cats(my_column AS varchar(16)), 1, length(my_column AS varchar(16)) -1), AS INT)
答案 3 :(得分:0)
如果字段是数字或字符串,则此方法有效:
UPDATE table SET count = SUBSTRING(count, 1, CHAR_LENGTH(count) - 1);