2012-02-20 32 views
7
nombre

Tabla: Employee
Nombre Columna: Emp_nameactualizar una columna para todas las filas

Emp_name tiene el siguiente contenido:

xx\rama, 
xx\rajesh, 
xx\vignesh 

que tengo que actualizar el Empleado tabla mediante la eliminación de xx\ de todas las filas de la columna Emp_name.

Por favor, ayúdame.

Respuesta

10
UPDATE Employee 
SET EMP_Name = REPLACE(Emp_name, 'xx\', '') 

Esto eliminará todas las ocurrencias de xx\ en todos los registros.

+0

Gracias por su respuesta. ¿Puede por favor decirme cómo actualizar solo la primera fila en la columna de arriba de la tabla Employee? –

+0

¿Puedo saber cómo puedo revertir la misma actualización anterior? –

+0

No puede, ya que está borrando lo que hace que esas filas sean identificables. – JNK

1
UPDATE [Employee] 
SET Emp_Name=REPLACE(Emp_Name, 'xx\', '') 

Si lo que desea es simplemente actualizar el primero, y luego hacer:

UPDATE [Employee] 
SET Emp_Name=REPLACE(Emp_Name, 'xx\', '') 
WHERE Emp_Id=(SELECT MIN(Emp_Id) FROM [Employee]) 
+0

Gracias por su respuesta. ¿me puede decir cómo actualizar solo la primera fila en la columna de la tabla Tabla de empleados? –

+1

Esto depende de lo que describa como la primera fila. ¿Qué columnas hay en tu mesa? ¿Tienes un campo de clave principal? ¿Cuál es el valor del campo Clave principal que clasifica como la primera fila? – Curt

+0

He tomado Emp_id como mi clave principal –

4
update Employee set 
Emp_name = substring(Emp_name, 4) 
where Emp_name like 'xx\\%'; -- escaped backslash as per your database flavour 
+0

+1 para un enfoque diferente – JNK

+2

No creo que esto funcione. Creo que la última línea debe cambiarse a 'where Emp_name like 'xx \\%'' – Curt

+0

Gracias por su respuesta. ¿Puede por favor decirme cómo actualizar solo la primera fila en la columna de arriba de la tabla Employee? –

-1

I "m suponiendo que esto es en MS SQL, así que si lo es, esto debería trabajar

actualización Empleado

conjunto EMP_NAME = derecha (e mp_name, len (emp_name) - 3)

+0

Gracias por su respuesta. ¿Puede por favor decirme cómo actualizar solo la primera fila en la columna de arriba de la tabla Employee? –

+0

bueno, si conoce el emp_name puede actualizar el conjunto de empleados emp_name right (emp_name, len (emp_name) - 3) donde emp_name = 'somename'; de lo contrario, puede actualizar el conjunto de empleados emp_name right (emp_name, len (emp_name) - 3) donde emp_name = (seleccionar top 1 del empleado) – nikolifish

Cuestiones relacionadas