我希望从数据库中的列中删除最后30个字符。
Column Name = gatewayid
Table Name = tblclients
我创建了下面的代码,该代码在一定程度上可以显示结果,并且是正确的,但是它不会提交或更改任何内容。
SELECT gatewayid, /* ANSI Syntax */SUBSTRING( gatewayid
FROM 1
FOR CHAR_LENGTH( gatewayid ) -30 ) AS col_trimmed, /* MySQL Syntax */SUBSTRING( gatewayid, 1, CHAR_LENGTH( gatewayid ) -30 ) AS col_trimmed
FROM tblclients
我想念的是什么,我是菜鸟:)
我希望该列中的数据能删除每行的最后30个字符。
答案 0 :(得分:0)
您可以使用
SELECT gatewayid
,/*ANSI Syntax*/ SUBSTRING(gatewayid FROM 1 FOR CHAR_LENGTH(gatewayid) - 30) col_trimmed_ansi
,/* MySQL Syntax*/ SUBSTRING(gatewayid, 1 CHAR_LENGTH(gatewayid) -30) AS col_trimmed_mysql
FROM tblclients
并用于更新表内容
UPDATE tblclients
set gatewayid = SUBSTRING(gatewayid FROM 1 FOR CHAR_LENGTH(gatewayid) - 30)
答案 1 :(得分:0)
您需要使用update
语句:
update tblclients
set gatewayid = substring( gatewayid, 1, char_length( gatewayid ) -30 );