0
imは2つの表を比較しています。 表1に列1-5を示します。 表2に列1-6を示します。 TABLE1ここ表1から表2に列をコピーして、内容をコピーします。
imは2つの表を比較しています。 表1に列1-5を示します。 表2に列1-6を示します。 TABLE1ここ表1から表2に列をコピーして、内容をコピーします。
フルコンテンツと(表2から)6列を追加する方法
はそれが達成することができる方法の例である: - 2つのテーブル
DECLARE @FirstTable TABLE (
FirstFirst VARCHAR(5),
FirstSecond VARCHAR(5),
FirstThird VARCHAR(5),
FirstFourth VARCHAR(5),
FirstFifth VARCHAR(5))
INSERT INTO @FirstTable
VALUES
('111', '121', '131', '141', '151'),
('112', '122', '132', '142', '152'),
('113', '123', '133', '143', '153')
DECLARE @SecondTable TABLE (
SecondFirst VARCHAR(5),
SecondSecond VARCHAR(5),
SecondThird VARCHAR(5),
SecondFourth VARCHAR(5),
SecondFifth VARCHAR(5),
SecondSixth VARCHAR(5))
INSERT INTO @SecondTable
VALUES
('111', '121', '131', '141', '151', '161'),
('112', '122', '132', '142', '152', '162'),
('113', '123', '133', '143', '153', '163')
--As a join
SELECT ft.*, st.SecondSixth FROM @FirstTable AS ft
LEFT JOIN @SecondTable AS st ON
ft.FirstFirst = st.SecondFirst AND
ft.FirstSecond = st.SecondSecond AND
ft.FirstThird = st.SecondThird AND
ft.FirstFourth = st.SecondFourth AND
ft.FirstFifth = st.SecondFifth
--As outer apply
SELECT ft.*, oa_secondTable.SecondSixth FROM @FirstTable AS ft
OUTER APPLY (
SELECT TOP 1 st.SecondSixth FROM @SecondTable AS st
WHERE
ft.FirstFirst = st.SecondFirst AND
ft.FirstSecond = st.SecondSecond AND
ft.FirstThird = st.SecondThird AND
ft.FirstFourth = st.SecondFourth AND
ft.FirstFifth = st.SecondFifth
) AS oa_secondTable
短い説明 - 最初の例は結合との比較です - 2番目の例はtheresと外部の適用との比較です
参照しているデータベースエンジンについてより具体的に説明する必要があります。この情報はタグで提供することができます。使用したタグはあいまいです。明確にするためにテーブル図を添付することも良い考えです。 – Jacob
Im Ms sql 2014およびhat 5型のvarchar型の列を使用します。 –
私はsqlタグの説明を引用します: "[..]質問には、コード例、テーブル構造、サンプルデータ[..]を含める必要があります。誰かがあなたに正確な答えを与えることははるかに簡単です。 – Jacob