I have table A, which is missing data, on table B values. I would like to update table A based on an Item ID. Can this be created in a stored Procedure?
table A
ID fruit vegetable available not available
123
456
89
-- Create Table A
CREATE TABLE TableA (
ID INT PRIMARY KEY,
fruit VARCHAR(50) NULL,
vegetable VARCHAR(50) NULL,
[available] VARCHAR(50) NULL,
[not available] VARCHAR(50) NULL
);
-- Create Table B
CREATE TABLE TableB (
ID INT PRIMARY KEY,
fruit VARCHAR(50) NULL,
vegetable VARCHAR(50) NULL
);
-- Insert data into Table A
INSERT INTO TableA (ID) VALUES
(123),
(456),
(89);
-- Insert data into Table B
INSERT INTO TableB (ID, fruit, vegetable) VALUES
(123, 'X', NULL),
(456, 'X', NULL),
(89, NULL, NULL);
CREATE PROCEDURE sp_UpdateTableAFromTableB
AS
BEGIN
UPDATE A
SET A.fruit = B.fruit,
A.vegetable = B.vegetable
FROM TableA A
INNER JOIN TableB B
ON A.ID = B.ID;
END
GO
EXEC sp_UpdateTableAFromTableB;
GO