[Résolu] Calcul avec champ "NULL"

Discussions sur le module de base de données Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
eddy75
Fraîchement OOthentifié
Messages : 5
Inscription : 18 nov. 2007 23:11

[Résolu] Calcul avec champ "NULL"

Message par eddy75 »

Bonjour,

J’ai besoin pour faire des calculs dans une requête que des champs vide (NULL) soient interprétés comme valeur 0. Sinon aucun calcul ne se fait.

Merci d’avance pour vos réponses.
:wink:
Dernière modification par eddy75 le 26 nov. 2007 16:17, modifié 1 fois.
OOo 2.3.0 sous Windows XP
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25181
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Message par Dude »

Il est impossible de répondre sans savoir quelle est la structure de la table et le type de calcul que tu veux faire. Merci de nous donner quelque chose de concret.

:?
Poser une question, c'est bien. Répondre aux autres, c'est encore mieux.
Améliorez AOO et votez pour les issues
eddy75
Fraîchement OOthentifié
Messages : 5
Inscription : 18 nov. 2007 23:11

Message par eddy75 »

Pour illustrer ma question je joins une base de donnée.

http://user.services.openoffice.org/fr/ ... 092404.odb

La question se pose dans la requête : Reliquat, quand je souhaite soustraire la quantité commandé à la quantité reçue.
OOo 2.3.0 sous Windows XP
Pierre-Yves Samyn
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 11276
Inscription : 02 mai 2006 08:42

Message par Pierre-Yves Samyn »

Bonjour

Il faut remplacer la colonne sélectionnée par :

Code : Tout sélectionner

 IFNULL( "quantite_commande", 0 ) AS "QteComm"
Si le champ est "null" c'est la valeur indiquée qui est retournée, sinon, c'est le champ lui-même.

Image

Nota : tu ne pourras pas faire directement le calcul dans cette requête mais pourras le faire dans une autre fondée sur celle-ci.

Documentation : http://hsqldb.org/doc/guide/ch09.html#N1251E
eddy75
Fraîchement OOthentifié
Messages : 5
Inscription : 18 nov. 2007 23:11

Message par eddy75 »

:D Merci Pierre-Yves c'est exactement ce que je voulais et pour la doc, ça me seras surement utile pour mes futures requêtes. :wink:
OOo 2.3.0 sous Windows XP