0

企業ペアのデータセットがあり、リストされている企業ペアのパートナー名の 1 つまたは両方のパートナー名が別のテーブルの企業リストに含まれているかどうかを確認したいと考えています。

会社名のリストに 1 つまたは 2 つのパートナーが含まれている場合、企業ペアのリストの「EarlyStage」列に値 1 を挿入し、それ以外の場合は 0 を挿入する必要があります。

会社名のリストは次のようになります

Partner

1View
1-Net
3T
A&L

企業ペアのリストは、新しく挿入された値を含む「EarlyStage」列を含めて、次のようになります。

Partner11  |  Partner22  |  EarlyStage

Unisys     |  Campu      |      0
A&L        |  Silva      |      1
Jet        |  3T         |      1
1-Net      |  1View      |      1

Unisys と Campu の両方のパートナーが会社名のリストに含まれていないため、最初の行の「EarlyStage」の値は 0 である必要があります。他の行では、"EarlyStage" は 1 の値を取る必要があります。これは、partner11 (cp. 行 2) または partner22 (cp. 行 3) またはその両方 (cp. 行 3) が会社名のリストに含まれているためです。

この問題を解決するための助けをいただければ幸いです。

事前にどうもありがとうございました。

4

2 に答える 2

1
update Pairs
set EarlyStage = 1 
from Pairs
    inner join Companies on Companies.Company in (Pairs.Partner11, Pairs.Partner22)
于 2013-10-09T10:35:10.393 に答える
0

これを試して:

INSERT INTO EarlyStage
SELECT
CASE WHEN Partner11 in (select name from Partner) 
THEN 1
WHEN Partner22 in (select name from Partner)
THEN 1
ELSE 0
END
于 2013-10-09T10:27:09.087 に答える