Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

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

1 réponse
Avatar
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

1 réponse

Avatar
SQLpro
On 21 fév, 15:08, "Benoit" wrote:
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