在SQL中,如何删除表中特定列的值的前4个字符?列名为“Student Code”,示例为“ABCD123Stu1231”。 我想从我的表中删除所有记录的前4个字符
请指引我
在SQL中,如何删除表中特定列的值的前4个字符?列名为“Student Code”,示例为“ABCD123Stu1231”。 我想从我的表中删除所有记录的前4个字符
请指引我
当前回答
试试这个。100%的工作
UPDATE Table_Name
SET RIGHT(column_name, LEN(column_name) - 1)
其他回答
如果你必须删除前面的几个特殊字符,比如#,这是一个很好的例子:
UPDATE tblInvalidID
SET [ColumnName] =stuff(ColumnName, 1, charindex('#', ColumnName), ' ')
内置的修剪功能非常适合这个目的。
SELECT trim(both 'ag' from 'asdfg');
btrim
-------
sdf
(1 riga)
http://www.postgresql.org/docs/8.1/static/functions-string.html
你也可以在SQL中这样做。
substring(StudentCode,4,len(StudentCode))
语法
substring (ColumnName,<Number of starting Character which u want to remove>,<length of given string>)
完整的东西
DECLARE @v varchar(10)
SET @v='#temp'
select STUFF(@v, 1, 1, '')
WHERE LEFT(@v,1)='#'
Stuff(someColumn, 1, 4, '')
这就是说,从第一个字符位置开始,用空替换4个字符”