varios update una tabla sentencia registros registro otra modificar datos consultas comando actualizar actualizacion sql sql-update

sql - update - Cómo ACTUALIZAR todas las columnas de un registro sin tener que listar cada columna



modificar registro sql server (4)

Estoy tratando de averiguar si hay una manera de actualizar un registro sin tener que enumerar cada nombre de columna que se va a actualizar.

Por ejemplo, sería bueno si pudiera usar algo similar a:

// the parts inside braces are what I am trying to figure out UPDATE Employee SET {all columns, without listing each of them} WITH {this record with id of ''111'' from other table} WHERE employee_id = ''100''

Si esto se puede hacer, ¿cuál sería la forma más sencilla y eficiente de escribir una consulta de este tipo?


¿Qué hay de usar Fusionar?

https://technet.microsoft.com/en-us/library/bb522522(v=sql.105).aspx

Te da la capacidad de ejecutar Insertar, actualizar y eliminar. Otro consejo es que si va a actualizar un gran conjunto de datos con índices, y el subconjunto de origen es más pequeño que su objetivo pero ambas tablas son muy grandes, primero mueva los cambios a una tabla temporal. Intenté combinar dos tablas que tenían casi dos millones de filas cada una y 20 registros tardaron 22 minutos. Una vez que moví los deltas a una tabla temporal, tomó segundos.


Esto no es posible, pero ...

puedes hacerlo:

begin tran delete from table where CONDITION insert into table select * from EqualDesingTabletoTable where CONDITION commit tran

Ten cuidado con los campos de identidad.


No es posible.

Lo que intenta hacer no forma parte de la especificación de SQL y no es compatible con ningún proveedor de bases de datos. Consulte las especificaciones de las sentencias de ACTUALIZACIÓN de SQL para MySQL , Postgresql , MSSQL , Oracle , Firebird , Teradata . Cada uno de esos soporta solo por debajo de la sintaxis:

UPDATE table_reference SET column1 = {expression} [, column2 = {expression}] ... [WHERE ...]


puede hacerlo eliminando la columna de la tabla y agregando nuevamente la columna y agregando un valor predeterminado de lo que sea que sea. a continuación, guardar esto requerirá reconstruir la tabla