Skip to content

Instantly share code, notes, and snippets.

@xinmyname
Last active August 29, 2015 14:02
Show Gist options
  • Select an option

  • Save xinmyname/83cbf6d5dd9901d434f3 to your computer and use it in GitHub Desktop.

Select an option

Save xinmyname/83cbf6d5dd9901d434f3 to your computer and use it in GitHub Desktop.
What could be simpler?
MERGE INTO vegetation.PlotHeader AS Target
USING (VALUES(@PlotNumber,@SurveyDate,GETDATE(),@ProjectId,@PlantCommId,@Comments,@PlotId,@NorthShadePercentage,@EastShadePercentage,@SouthShadePercentage,@WestShadePercentage))
AS Source(PlotNumber,SurveyDate,LastModified,ProjectId,PlantCommId,Comments,PlotId,NorthShadePercentage,EastShadePercentage,SouthShadePercentage,WestShadePercentage)
ON
(
Target.SurveyDate = Source.SurveyDate AND
Target.ProjectId = Source.ProjectId AND
Target.PlantCommId = Source.PlantCommId AND
Target.PlotNumber = Source.PlotNumber
)
WHEN MATCHED THEN
UPDATE SET
LastModified = Source.LastModified,
Comments = Source.Comments,
NorthShadePercentage = Source.NorthShadePercentage,
EastShadePercentage = Source.EastShadePercentage,
SouthShadePercentage = Source.SouthShadePercentage,
WestShadePercentage = Source.WestShadePercentage
WHEN NOT MATCHED BY Target THEN
INSERT (PlotNumber,SurveyDate,timestamp,LastModified,ProjectId,PlantCommId,Comments,RowGuid,PlotId,NorthShadePercentage,EastShadePercentage,SouthShadePercentage,WestShadePercentage)
VALUES (PlotNumber,SurveyDate,DEFAULT,LastModified,ProjectId,PlantCommId,Comments,NEWID(),PlotId,NorthShadePercentage,EastShadePercentage,SouthShadePercentage,WestShadePercentage);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment