SQL中如何删除某个字段内容的第一个字符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL中如何删除某个字段内容的第一个字符相关的知识,希望对你有一定的参考价值。

office 字段内容为“01600.政法学院”,我想把它改成“1600.政法学院”(就是把首位的0去掉)。
怎么做?

执行SQL语句:update 表名 set 字段名=stuff(字段名,substring(字段名,0,1),'')。

stuff函数:

1、作用:stuff函数用于删除指定长度的字符,并在指定的起点处插入另一组字符。

2、语法:STUFF ( character_expression , start , length ,character_expression )

3、参数:

(1)character_expression:一个字符数据表达式。character_expression 可以是常量、变量,也可以是字符列或二进制数据列。

(2)start:一个整数值,指定删除和插入的开始位置。如果 start 或 length 为负,则返回空字符串。如果 start 比第一个 character_expression长,则返回空字符串。start 可以是 bigint 类型。

(3)length:一个整数,指定要删除的字符数。如果 length 比第一个 character_expression长,则最多删除到最后一个 character_expression 中的最后一个字符。length 可以是 bigint 类型。

扩展资料:

如果 character_expression 是支持的字符数据类型之一,则返回字符数据 。 如果 character_expression 是支持的二进制数据类型之一,则返回二进制数据 。

如果开始位置或长度值是负数,或者开始位置大于第一个字符串的长度,则返回 Null 字符串。 如果开始位置为 0,则返回 Null 值。如果要删除的长度大于第一个字符串的长度,则删除到第一个字符串中的第一个字符。

如果结果值大于返回类型支持的最大值,则会引发错误。

参考资料来源:百度百科——Stuff

参考技术A update 表 set 字段=substring(字段,2,len(字段)-1) 就可以了

substring 是截取字符串 2 是从第二个截取 len(字段)-1 是截取多少个本回答被提问者采纳
参考技术B update 表 set office=RIGHT(office,LEN(office)-1)

或者
update 表 set office=stuff(office,1,1,'')
参考技术C select stuff('01600.政法学院',0,1,N''); 参考技术D select ltrim('01600.政法学院',0) from 表

以上是关于SQL中如何删除某个字段内容的第一个字符的主要内容,如果未能解决你的问题,请参考以下文章

如何写sql 语句,能删除字段中某个字符到最后字符串的?

sql 删除表中的字段的最后一个字符

SQL查询中,如何判断一个字符串字段的内容的长度

sql 删除表中的字段的最后一个字符

sql 当中 如何查询某个字段中的值的第几个字符中含有相应的值

如何批量删除数据库中同一字段开头的表?