の間でデータをコピーします。 テーブルaccount_companyには、company_idとcompany_nameという2つの列があります。 表document_invoiceには、同じ列company_idとcompany_nameがあります。 問題が発生し、document_invoiceから列会社名のすべてのデータが削除されました。私はdocument_invoiceするアカウントの会社のテーブルからデータをコピーするには、SQLクエリを書くことができますどのようには、どのように私は2つのテーブルを持つテーブルのPostgreSQL
? 私はUPDATEとSETを使用していますが、正確にはわかりません。
UPDATE document_invoice
SET company_name = (SELECT company_name FROM account_company)
WHERE document_id.company_name=document_id.account
を使用すると、会社名を変更するかもしれないと思うと、あなたがしたい場合を除き、文書の請求書テーブルに* *運んない会社名を考えます請求書の日付から会社名の価値を取得する。 (たとえそうであっても、問題の一時的な管理を検討することもできますが、それはトップになる可能性があります)。データの冗長化は更新するのに費用がかかり、同期が外れる可能性があります。これがジョインです。ジョインが高価だとFUDは信じてはいけません。 – kgrittn
私はkgrittnでaggree:あなたはすでにdocument_invoiceでのcompany_idを持っている場合は、そのテーブルにCOMPANY_NAMEのコピーを保持する必要はありません。 –