2010-11-16 6 views
1

J'ai deux champs (Utter et Misery) dans Table Massconfusion dans la base de données A que je dois déplacer vers deux champs (aussi nommés Utter et Misery) dans une table également appelée Massconfusion base de données B. Il y a deux clés (primaire et sous-clé) qui gardent ces données triées correctement avec le reste de l'information dans la base de données A et B.
(fondamentalement nous avons en quelque sorte perdu la plupart des informations dans les deux champs et essayons d'obtenir il d'une vieille copie de notre DB et toutes les méthodes faciles de la restauration n'ont pas fonctionné.)Copier des champs select dans une table db vers une autre table db

Je suis un débutant total au script en sql. Donc je plaide, AIDE! Merci d'avance.

Répondre

0
UPDATE B.dbo.MassConfusion 
SET Utter = (SELECT Utter FROM A.dbo.MassConfusion WHERE A.PrimeKey = B.PrimeKey) 

UPDATE B.dbo.MassConfusion 
SET Misery= (SELECT Misery FROM A.dbo.MassConfusion WHERE A.PrimeKey = B.PrimeKey) 

Vous pouvez être mieux insérer dans une nouvelle table en fonction du nombre d'enregistrements et comment foiré ils sont, mais .... UPDATE peuvent être lents et coûteux en fonction du nombre des indices que vous avez, etc.

0

Je n'étais pas clair sur exactement ce que la clé primaire de votre table MassConfusion était. La première version suppose que la clé primaire pour MassConfusion est juste Primary. Si la clé primaire est en réalité un composite de Primary et SubKey, utilisez la seconde version.

Version 1: clé primaire est constitué d'une colonne

/* Just to make it clear that this is run from Database B */ 
Use B 
go 

update MCB 
    set Utter = MCA.Utter, 
     Misery = MCA.Misery 
    from MassConfusion MCB 
     inner join A.dbo.MassConfusion MCA 
      on MCB.Primary = MCA.Primary 

Version 2: clé primaire est un composite de deux colonnes

/* Just to make it clear that this is run from Database B */ 
Use B 
go 

update MCB 
    set Utter = MCA.Utter, 
     Misery = MCA.Misery 
    from MassConfusion MCB 
     inner join A.dbo.MassConfusion MCA 
      on MCB.Primary = MCA.Primary 
       and MCB.SubKey = MCA.SubKey 
+0

Merci, problèmes résolus. Je vous en suis reconnaissant. – Brett

+0

@Brett: Content de vous aider. Voulez-vous "accepter" cette réponse en cliquant sur la coche? Merci. –

Questions connexes