6
我有兩個表:account_company和document_invoice。 表account_company有2列:company_id和company_name。 表document_invoice具有相同的列:company_id和company_name。 發生了某些情況並從document_invoice中刪除了列公司名稱中的所有數據。如何在表格間複製數據PostgreSQL
如何編寫SQL查詢以將帳戶公司表中的數據複製到document_invoice? 我一直在使用更新和設置,但我不知道如何。
UPDATE document_invoice
SET company_name = (SELECT company_name FROM account_company)
WHERE document_id.company_name=document_id.account
略OT,考慮*沒有攜帶*文檔發票表中的公司名稱,除非你認爲這家公司的名稱可能會改變,你想從發票時間獲取公司名稱的價值。 (即使您可能會考慮對問題進行暫時管理,但這可能會超越問題的頂部。)冗餘的數據存儲使得更新更加昂貴,並且可能導致其不同步。這是聯結的目的。不要相信FUD關於聯接是昂貴的。 – kgrittn 2012-04-28 01:33:11
我同意kgrittn:如果您已在document_invoice中擁有company_id,則不需要在該表中保留company_name的副本。 – 2012-05-02 14:53:14