Home Forums SQL Server 2008 T-SQL (SS2K8) Multiple DMLS in one when clause of MERGE Statement RE: Multiple DMLS in one when clause of MERGE Statement

  • The Create table statements are

    CREATE TABLE [Vacancy].[TB_Vacancy](

    [VacancyInternalID] [bigint] IDENTITY(1,1) NOT NULL,

    [VacancyExternalID] [nvarchar](40) NULL,

    [VacancyReferenceNumber] [nvarchar](100) NULL,

    [VacancyTitle] [nvarchar](400) NOT NULL,

    [VacancyQuantity] [smallint] NULL,

    [VacancyYearsOfExperience] [tinyint] NULL,

    [VacancyCompetency] [nvarchar](max) NULL,

    [VacancySalaryBaseRate] [numeric](14, 0) NULL,

    [VacancySalaryTopRate] [numeric](14, 0) NULL,

    [VacancySalaryFrequencyID] [int] NULL,

    [VacancyBenefits] [nvarchar](max) NULL,

    [VacancyStartDate] [datetime2](0) NULL,

    [VacancyEndDate] [datetime2](0) NULL,

    [VacancyRequirements] [nvarchar](max) NULL,

    [VacancyDescription] [nvarchar](max) NULL,

    [VacancyDescriptionAbstract] [nvarchar](1000) NULL,

    [VacancyCleanDescription] [nvarchar](max) NULL,

    [VacancyCleanDescriptionAbstract] [nvarchar](1000) NULL,

    [VacancyApplyURI] [varchar](2000) NULL,

    [VacancyApplicationCloseDate] [datetime2](0) NULL,

    [VacancyPostingStartDate] [datetime2](0) NULL,

    [VacancyPostingEndDate] [datetime2](0) NULL,

    [VacancyContactID] [int] NULL,

    [VacancyLongitude] [numeric](14, 10) NULL,

    [VacancyLatitude] [numeric](14, 10) NULL,

    [VacancyGeoLocation] [geography] NULL,

    [VacancyLocationAccuracy] [tinyint] NULL,

    [VacancyAddressLine1] [nvarchar](200) NULL,

    [VacancyAddressLine2] [nvarchar](200) NULL,

    [VacancyAddressLine3] [nvarchar](200) NULL,

    [VacancyPostCode] [nvarchar](20) NULL,

    [VacancyCityID] [int] NULL,

    [VacancyProvinceID] [int] NULL,

    [VacancyCountryID] [int] NULL,

    [VacancyRegionID] [int] NULL,

    [VacancyLanguageID] [int] NOT NULL,

    [VacancyCurrencyID] [int] NULL,

    [VacancyAdditionalInformation] [xml] NULL,

    [VacancyClientInternalID] [int] NULL,

    [VacancyStatusID] [tinyint] NOT NULL,

    [VacancyContractTypeID] [int] NULL,

    [VacancyShiftID] [int] NULL,

    [VacancyIndustryID] [int] NULL,

    [VacancyPostingPersonContactID] [int] NULL,

    [VacancyContractID] [int] NOT NULL,

    [VacancyBrandID] [int] NULL,

    [VacancyBusinessUnitID] [int] NULL,

    [VacancyBranchID] [int] NULL,

    [CreatedBy] [nvarchar](100) NOT NULL,

    [CreatedDate] [datetime2](0) NOT NULL,

    [ModifiedBy] [nvarchar](100) NULL,

    [ModifiedDate] [datetime2](0) NULL,

    [DeletedBy] [nvarchar](100) NULL,

    [DeletedDate] [datetime2](0) NULL,

    [VacancyFTSupdated] [tinyint] NOT NULL,

    [VacancyAnnualSalaryBaseRate] [numeric](14, 0) NULL,

    [VacancyAnnualSalaryTopRate] [numeric](14, 0) NULL,

    CONSTRAINT [PK_VacancyInternalID] PRIMARY KEY CLUSTERED

    (

    [VacancyInternalID] ASC

    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

    ) ON [PRIMARY]

    GO

    CREATE TABLE [Vacancy].[TB_FTSearchData](

    [FTSearchVacancyInternalID] [int] NOT NULL,

    [FTSearchVacancyTitle] [nvarchar](400) NOT NULL,

    [FTSearchVacancyCleanDescription] [nvarchar](max) NULL,

    [FTSearchVacancyCategoryName] [nvarchar](4000) NULL,

    [FTSearchVacancyTagName] [nvarchar](4000) NULL,

    [FTSearchContractID] [int] NOT NULL,

    [FTSearchVacancyLCID] [int] NOT NULL,

    [CreatedDate] [datetime2](0) NOT NULL,

    [ModifiedDate] [datetime2](0) NULL,

    CONSTRAINT [PK_FTSearch_VacancyInternalID] PRIMARY KEY CLUSTERED

    (

    [FTSearchVacancyInternalID] ASC

    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

    ) ON [PRIMARY]

    GO