Tengo dos tablas: account_company y document_invoice. Table account_company tiene 2 columnas: company_id y company_name. La tabla document_invoice tiene las mismas columnas: company_id y company_name. Ocurrió algo y elimina todos los datos del nombre de la compañía de columnas de document_invoice.Cómo copio datos entre tablas PostgreSQL
¿Cómo puedo escribir una consulta SQL para copiar los datos de la tabla de compañía de cuenta a document_invoice? He estado usando ACTUALIZAR y CONFIGURAR, pero no sé exactamente cómo.
UPDATE document_invoice
SET company_name = (SELECT company_name FROM account_company)
WHERE document_id.company_name=document_id.account
Ligeramente OT, consideran * No llevar el * el nombre de la empresa en la superficie para documentos factura, a menos que se cree que el nombre de la empresa podría cambiar y que desea para capturar el valor del nombre de la empresa desde el momento de la factura. (Aun así, podría considerar la administración temporal del problema, pero podría ser excesivo). El almacenamiento redundante de datos hace que sea más costoso actualizarlo e introduce un riesgo de que se desincronice. Esto es para lo que se une. No crea en FUD que las uniones son costosas. – kgrittn
Estoy de acuerdo con kgrittn: si ya tiene el company_id en document_invoice, no es necesario que guarde una copia del nombre de la compañía en esa tabla. –