2011-08-03 3 views
1

J'ai une table qui a trois colonnesComment insérer la valeur à la nouvelle table en fonction de la condition

A B 
1 9999 

2 999 

3 99 

4  9 

Maintenant, je dois insérer des données dans la nouvelle table vide, la requête que je vous écris pour cela est ci-dessous

Je veux quand il insérer dans la nouvelle table, il viendra comme ce

A B 
1 9999 

2 0999 

3 0099 

4 0009 

Je suis désemparés comment le faire, s'il vous plaît aider

+0

Puis-je connaître la raison du vote vers le bas? –

+0

Vous dites que la table a trois colonnes. Pourquoi nous montrez-vous seulement deux? –

Répondre

2
INSERT 
INTO newtable 
VALUES a, RIGHT(REPLICATE('0', 4) + CAST(b AS NVARCHAR(MAX)), 4) 
FROM oldtable 
1

Vous pouvez faire quelque chose comme ceci:

SELECT A, REPLACE(SPACE(4-LEN(B)) & B, ' ', '0') 
INTO NewTableName 
FROM OldTableName 
2
INSERT INTO Table2 (A, B) 
SELECT A, RIGHT(10000 + B, 4) 
FROM Table1 
+0

Nice. +++++ – Quassnoi

Questions connexes