Pb de type de données par défaut SQL

Le
Benoit
Bonjour,

Voici mon problème :
--Script
DECLARE @Poids NUMERIC(10,3)

SELECT @poids = 970/1000

PRINT @poids

ce Script me renvoit 0.000 alors que j'attends 0,970.

Si je fais :
DECLARE @Poids NUMERIC(10,3)

SELECT @poids = 970.00/1000.00

PRINT @poids

Me renvoit 0,970

Sachant que je ne peux pas caster les chiffres en numérique pour le calcul,
ils sont contenus dans une chaine de char.

Merci pour vos réponses

Benoit
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
SQLpro
Le #11882571
On 21 fév, 15:08, "Benoit"
Bonjour,

Voici mon problème :
--Script
DECLARE @Poids NUMERIC(10,3)

SELECT @poids = 970/1000



dans ce cas 970 est un entier et 1000 aussi c'est pourquoi 970/1000
donne 0...

Si vous voulez des réels faîtes des réels :
970.0 / 1000.0
par exemple
sinon :
CAST(970 AS FLOAT) / CAST(1000 AS FLOAT).

A +

Frédéric BROUARD - SQLpro - MVP SQL Server
Spécialiste SQL/BD modélisation de données
SQL & SGBDR http://sqlpro.developpez.com/
Expert SQL Server : http://www.sqlspot.com
audits - optimisation - tuning - formation


PRINT @poids

ce Script me renvoit 0.000 alors que j'attends 0,970.

Si je fais :
DECLARE @Poids NUMERIC(10,3)

SELECT @poids = 970.00/1000.00

PRINT @poids

Me renvoit 0,970

Sachant que je ne peux pas caster les chiffres en numérique pour le calc ul,
ils sont contenus dans une chaine de char.

Merci pour vos réponses

Benoit


Publicité
Poster une réponse
Anonyme