Hvordan Merge i SQL Server 2008

Hvordan Merge i SQL Server 2008


SQL Server 2008 brukes til å administrere og opprette databaser for flere sluttbrukere. Noen av funksjonene i SQL Server 2008 er selvjusterende, selvorganiserende og selvopprettholde evner med nesten nær null nedetid. I tillegg tilbyr den FILESTREAM program, som lar deg trekke opp noen fil i hele databasen. SQL Server 2008 er merge uttalelse gir deg muligheten til å bruke felles forhold til å endre eller slette data etter eget valg. Opprette flettingen krever et par trinn for å konfigurere.

Bruksanvisning

1 Forbered dataene du ønsker å slå sammen etter formatet på følgende eksempel for en SalesArchive tabell:

"CREATE TABLE SalesArchive

(

CustomerID INT PRIMARY KEY,

SalesDate INT,

TotalSalesAmount PENGER,

TotalSalesCount SMALLINT,

Utarbeidet DATETIME CONSTRAINT df_CreationDate STANDARD (getdate ()),

UpdatedDate DATETIME CONSTRAINT df_UpdatedDate STANDARD (getdate ())

)

CREATE TABLE SalesFeed

(

CustomerID INT,

Produkt VARCHAR (10),

SaleAmount PENGER

). "

2 Skriv inn din informasjon ved å formatere det på samme måte som dette eksempelet:

"INSERT INTO SalesFeed

(CustomerID, Product, SaleAmount)

VERDIER

(1, 'Pooltable ", 1000),

(2, 'storskjerm', 955),

(3, "Computer", 590),

(4, 'storskjerm', 880),

(5 'Computer', 700). "

3 Flett dataene ved å skrive inn en kommando som følger dette utvalget:

"Slå sammen SalesArchive AS SA

BRUKE (

SELECT

Kunde ID,

LoadDate = MIN (konvertere (VARCHAR (8), getdate (), 112)),

TotalSalesAmount = SUM (SaleAmount),

TotalSalesCount = ANTALL (*)

Fra SalesFeed

GROUP BY CustomerID

) AS SalesFeedCTE (CustomerID, LoadDate, TotalSalesAmount, TotalSalesCount)

(

SA.CustomerID = SalesFeedCTE.CustomerID OG SA.SalesDate = SalesFeedCTE.LoadDate

)

NÅR IKKE matchet,

INSERT (CustomerID, SalesDate, TotalSalesAmount, TotalSalesCount, CreationDate, UpdatedDate)

VERDIER (SalesFeedCTE.CustomerID, SalesFeedCTE.LoadDate, SalesFeedCTE.TotalSalesAmount, SalesFeedCTE.TotalSalesCount, getdate (), getdate ())

NÅR matchet,

UPDATE

SET SA.TotalSalesAmount = SA.TotalSalesAmount + SalesFeedCTE.TotalSalesAmount,

SA.TotalSalesCount = SA.TotalSalesCount + SalesFeedCTE.TotalSalesCount,

SA.UpdatedDate = getdate () ;. "

Du har nå fusjonert informasjon i SQL server 2008.