如何使用左联接从另一个表更改具有现有列的表?
这是我的左联接代码。它可以作为选择。
USE [Metamodel]
GO
SELECT a.*,
b.[TABLE_SIZE]
FROM guest.MMT_T a
left join [guest].[SYSTEM_INFO] b on a.TABLE_NAME = b.TABLE_NAME
GO
答案 0 :(得分:0)
您可以做的是添加一个新的空白/空列,然后通过混合使用更新表和联接将其设置为所需的结果。
我看起来可能是这样
CREATE TABLE firstTable
(
firstColumn NVARCHAR(2)
, correspondingText NVARCHAR(20)
)
CREATE TABLE secondTable
(
secondColumn NVARCHAR(2)
, correspondingText NVARCHAR(20)
)
-- Insert some values to join with later
INSERT INTO firstTable (firstColumn, correspondingText)
VALUES
('1', 'firstText')
-- Insert some values to join with later
INSERT INTO secondTable (secondColumn,correspondingText)
VALUES
('1', 'secondText')
-- Add a new column to the first table
ALTER TABLE firstTable
ADD columnFromOtherTable NVARCHAR(20)
-- I update the first table, with the added column, by setting t1.firstColumn(first
-- table and first column) = t2(Second table and second column) equal eachother
second tables
UPDATE t1
SET t1.columnFromOtherTable = t2.correspondingText
FROM firstTable t1
LEFT JOIN secondTable t2 ON t1.firstColumn = t2.secondColumn
SELECT firstColumn, correspondingText, columnFromOtherTable FROM firstTable
这是在Microsoft SQL Server Management Studio 2017中完成的。 该代码写得很快,很可能不是最佳实践。
查看是否可以将其应用于示例。否则,再次询问:)
关于, 丹尼尔