[Résolu] Colonnes conditionnelles dans une table

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.
Lesept
Membre lOOyal
Membre lOOyal
Messages : 34
Inscription : 14 mars 2018 08:37

[Résolu] Colonnes conditionnelles dans une table

Message par Lesept »

Bonjour
Je ne sais pas si le titre est explicite... J'ai un formulaire qui me permet de créer une table. J'aimerais ajouter des colonnes dans cette table qui permettent de simplifier la création du rapport. En effet, le rapport doit regrouper certaines données en fonction des valeurs d'autres données. Exemple :
  • si le booléen X est vrai, alors :
  • si la valeur de l'entier Y est comprise entre n1 et n2 OU si la valeur de l'entier Z est supérieure à n3, alors :
  • regrouper les données de la table
Pour faire ça, j'imagine de créer une nouvelle donnée qui serait le résultat de ce test un peu complexe : est-il possible lorsque la table se crée d'ajouter cette colonne et lui affecter le résultat du test ? Ou faut-il faire autrement ?
Merci de votre aide.
Dernière modification par Lesept le 28 mars 2018 15:21, modifié 1 fois.
OpenOffice 4.1.5, LibreOffice 5.4.6.2, Win 7
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25165
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: Colonnes conditionnelles dans une table

Message par Dude »

Lesept a écrit :J'ai un formulaire qui me permet de créer une table
Je ne vois pas l'intérêt de la chose.
Les tables sont créées au départ dans un modèle relationnel qui ne doit plus être touché.
Lesept
Membre lOOyal
Membre lOOyal
Messages : 34
Inscription : 14 mars 2018 08:37

Re: Colonnes conditionnelles dans une table

Message par Lesept »

Je me suis mal exprimé. J'ai une idée de table avec certaines colonnes, que je dois utiliser pour créer un rapport. Et je voudrais faire des groupes dans le rapport selon des conditions sur ces données.
OpenOffice 4.1.5, LibreOffice 5.4.6.2, Win 7
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25165
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: Colonnes conditionnelles dans une table

Message par Dude »

Lesept a écrit :J'ai une idée de table avec certaines colonnes, que je dois utiliser pour créer un rapport.
Ne serait-ce pas le concept de vue ?
Lesept
Membre lOOyal
Membre lOOyal
Messages : 34
Inscription : 14 mars 2018 08:37

Re: Colonnes conditionnelles dans une table

Message par Lesept »

Je ne sais pas, je maîtrise encore mal Base. Pour moi, la vue est une table intermédiaire créée pour faire un rapport.
Je ne connais pas la syntaxe SQL : comment créer une colonne dans cette vue qui soit le résultat d'un IF ou d'une fonction booléenne complexe des autres colonnes ? (quelques exemples SQL ou un lien me suffiront pour apprendre à m'en servir, pas besoin de faire une base spécifique). Merci
OpenOffice 4.1.5, LibreOffice 5.4.6.2, Win 7
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: Colonnes conditionnelles dans une table

Message par Piaf »

Bonjour
Lesept a écrit :comment créer une colonne dans cette vue qui soit le résultat d'un IF
Une petite recherche sur CASEWHEN ou CASE WHEN peut-être.
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16959
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: Colonnes conditionnelles dans une table

Message par jeanmimi »

Bonjour,
Plutôt que faire le Rapport sur une Table, le faire plutôt sur une Requête où tu pourras appliquer la suggestion de Piaf.
Le contrôle Booléen peut se formater directement dans le Rapport.
LibreOffice : Version : 24.2 (x64)(12 avril 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Lesept
Membre lOOyal
Membre lOOyal
Messages : 34
Inscription : 14 mars 2018 08:37

Re: Colonnes conditionnelles dans une table

Message par Lesept »

Je vais regarder ça, merci à tous.
OpenOffice 4.1.5, LibreOffice 5.4.6.2, Win 7