2010-07-30 4 views
2

Je me demandais si je pouvais soustraire la même valeur (offset) à toutes les valeurs d'une colonne spécifique dans ma table.Comment soustraire les mêmes montants à toutes les valeurs d'une colonne?

Par exemple, j'ai:

Col1 
------ 
34 
35 
36 

Je veux faire:

Col1 
------ 
24 
25 
26 

Quel est le code SQL pour le faire?

+3

il n'a pas été clair que ce soit pour l'affichage/resultset ou si vous vouliez sauvegarder ces valeurs à la table. –

Répondre

10

Est-ce que vous faites ceci pour l'affichage, ou voulez-vous mettre à jour le tableau avec les valeurs réduites?

Dans le premier cas:

select (Col1 - 10) from table 

Dans le second (en supposant que vous souhaitez mettre à jour toutes les lignes):

update table set Col1 = (Col1 - 10) 
+0

+1: Plus rapide que moi –

+0

A travaillé pour moi! Je vous remercie. – sparecycle

3

Que diriez-vous:

SELECT (MyCol - 10) 
From MyTable 
+0

+1: Plus rapide que moi –

+0

Thanks Ponies. C'est deux fois maintenant, mais vous m'avez battu une poignée de fois;) –

+1

Mais plus lent que moi, et avec moins de contenu. En fait, UPDATE p.campbell SET posttime = temps de publication de djacobson + 10 ;) –