I have this SP
CREATE PROCEDURE ApplyExistingImageAcrossModel
@capidfrom int,
@capidto int,
@type int
AS
BEGIN
DECLARE @imageid uniqueidentifier
INSERT INTO ImageMetaData
(ImageId,CapId,[Type],Source,DateAdded,OriginalFileName,OriginalUrl,isDefault,Height,Width,ViewType,CapImageId,islive)
SELECT @imageid,@capidto,@type,source,GETDATE(),originalfilename,originalurl,isdefault,height,width,viewtype,capimageid,islive
FROM ImageMetaData
WHERE [type] = @type AND capid = @capidfrom
INSERT INTO ImageData
(ImageId,ImageBinary)
SELECT @imageid,ImageBinary
FROM ImageData A
LEFT JOIN ImageMetaData B
ON A.ImageId = B.ImageId
WHERE B.[type] = @type
AND B.capid = @capidfrom
END
The problem is that the select can return multiple records for a particular capid
, and I want to copy them all, but each record needs a unique @imageid
which i'm only generating once, I need to use that imageid
in both tables.
Thanks