1

次のSQLステートメントがあります-

SELECT e.*, i.CaseNo, c.Claimant, c.Defendant, c.ClientID
FROM tblExpenses AS e
INNER JOIN tblInvoices AS i ON e.InvNo = i.InvNo
INNER JOIN tblCases AS c ON i.CaseNo = c.CaseNo

これは、3 つのテーブル間のリンクを示しています。

tblInvoices主キー[InvNo]は外部キーでもあり、tblExpenses各費用を関連する請求書にリンクします。

tblCases[CaseNo]には外部キーでもある主キーがあるtblInvoicesため、各請求書が特定のケースにリンクされます。

最後に、各ケースには、請求書が送信されたクライアントを識別するtblCasesという列があります。[ClientID]

次にtblExpenses、外部キーもあります[ClientID]が、現在、列にはデータが入力されていません。私がやりたいことは、上記のリンクを使用して、前述のリンクを介してfromに入力[ClientID]することです。tblExpenses[ClientID]tblCases

ただし、この列SELECTの作成を実行するためにクエリを書き直す方法がわかりません。[ClientID]tblExpenses

誰でも助けてもらえますか?

4

1 に答える 1

1

必要な情報を取得するのに十分な選択クエリが既にあります。それを更新クエリに変換するだけです。

UPDATE e SET e.ClientID=c.ClientID
FROM tblExpenses AS e
INNER JOIN tblInvoices AS i ON e.InvNo = i.InvNo
INNER JOIN tblCases AS c ON i.CaseNo = c.CaseNo
于 2013-04-04T04:49:21.320 に答える