Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Normalising Data
Message
 
 
À
26/03/2012 09:14:19
Information générale
Forum:
Microsoft SQL Server
Catégorie:
Syntaxe SQL
Versions des environnements
SQL Server:
SQL Server 2008
Divers
Thread ID:
01539359
Message ID:
01539365
Vues:
60
This message has been marked as the solution to the initial question of the thread.
>Hi,
>
>I've been given a spreadsheet to import into a database and need to normalise the data a bit. The source data when imported looks like this:
>
>
Group   Code  description
>AAA     001    Desc 1
>AAA     002    Desc 2
>BBB     003    Desc 3
>BBB     004    Desc 4
>
>(Of course the actual data makes more sense than those values I've put in.)
>
>I need to separate the Groups out into one table with a primary key and and the Code, Description and a Foreign Key value (pointing back to the Group).
>
>I use uniqueidentifiers as keys so was trying this:
>
>INSERT INTO BenefitCodeGroups
>SELECT DISTINCT NEWID(), Group
>FROM BenefitCodesImported
>
>but of course that doesn't work as I'll get a record for each distinct combination of NEWID() and Group.
>
>Who can help wake my brain up on a Monday morning?

Try:
;with cte as (select [Group] from BenefitCodeGroups GROUP BY [Group])

insert into NewGroups ([Group])
select [Group] from cte
------------
Set up default for ID field to be newsequentialID() if you want to use GUID for the PK (IMHO, overkill).
If it's not broken, fix it until it is.


My Blog
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform