sql - texto - ¿Cómo elimino los primeros caracteres de una columna específica en una tabla?
sql longitud cadena (11)
¿Por qué usar LEN para que tenga 2 funciones de cadena? Todo lo que necesitas es el personaje 5 en ...
...SUBSTRING (Code1, 5, 8000)...
En SQL, ¿cómo puedo eliminar los primeros 4 caracteres de los valores de una columna específica en una tabla? El nombre de columna es Student Code
y un valor de ejemplo es ABCD123Stu1231
. Quiero eliminar los primeros 4 caracteres de mi tabla para todos los registros
Por favor guíame
Aquí hay una maqueta simple de lo que estás tratando de hacer :)
CREATE TABLE Codes
(
code1 varchar(10),
code2 varchar(10)
)
INSERT INTO Codes (CODE1, CODE2) vALUES (''ABCD1234'','''')
UPDATE Codes
SET code2 = SUBSTRING(Code1, 5, LEN(CODE1) -4)
Entonces, use la última declaración contra el campo que desea recortar :)
La función SUBSTRING recorta Código1, comenzando en el QUINTO carácter, y continuando por la longitud de CÓDIGO1 menos 4 (el número de caracteres omitidos al inicio).
Está la función de ajuste incorporada que es perfecta para este propósito.
SELECT trim(both ''ag'' from ''asdfg'');
btrim
-------
sdf
(1 riga)
http://www.postgresql.org/docs/8.1/static/functions-string.html
Lo completo
DECLARE @v varchar(10)
SET @v=''#temp''
select STUFF(@v, 1, 1, '''')
WHERE LEFT(@v,1)=''#''
Prueba esto. 100% de trabajo
UPDATE Table_Name
SET RIGHT(column_name, LEN(column_name) - 1)
Prueba esto:
update table YourTable
set YourField = substring(YourField, 5, len(YourField)-3);
Sería bueno compartir, para uso de DB2: INSERT(someColumn, 1, 4, '''')
Stuff
no son compatibles en DB2
Si tiene que eliminar los primeros caracteres precedidos por un carácter especial como #
, esta es una buena:
UPDATE tblInvalidID
SET [ColumnName] =stuff(ColumnName, 1, charindex(''#'', ColumnName), '' '')
También puedes hacer esto en SQL ...
substring(StudentCode,4,len(StudentCode))
sintaxis
substring (ColumnName,<Number of starting Character which u want to remove>,<length of given string>)
SELECT RIGHT(MyColumn, LEN(MyColumn) - 4) AS MyTrimmedColumn
Editar: para explicar, DERECHA toma 2 argumentos: la cadena (o columna) para operar, y el número de caracteres a devolver (comenzando en el lado "derecho" de la cadena). LEN devuelve la longitud de los datos de la columna, y restamos cuatro para que nuestra función DERECHA deje a los 4 caracteres más a la izquierda "detrás".
Espero que esto tenga sentido.
Edite de nuevo - Acabo de leer la respuesta de Andrew, y es muy posible que haya interpelado correctamente, y podría estar equivocado. Si este es el caso (y desea ACTUALIZAR la tabla en lugar de simplemente devolver los resultados modificados), puede hacer esto:
UPDATE MyTable
SET MyColumn = RIGHT(MyColumn, LEN(MyColumn) - 4)
Está en el camino correcto, pero su solución mantendrá los 4 caracteres al comienzo de la cadena, en lugar de descartar dichos 4 caracteres.
Stuff(someColumn, 1, 4, '''')
Esto dice, comenzando con la primera posición de 1
carácter, reemplaza 4
caracteres con nada ''''