[Résolu] GROUP_CONCAT

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.
jarod
Fraîchement OOthentifié
Messages : 5
Inscription : 18 mai 2012 00:08

[Résolu] GROUP_CONCAT

Message par jarod »

Bonjour,
je souhaiterai créer un état de compte pour les charges d'un appartement (dans le cadre d'un syndicat de copropriétaires).

Je dispose d'une table me donnant le/les propriétaires pour chaque appartement:
OwnerShip
appartement Propriétaire
320 Albert
320 Gertrude
321 Toto

J'ai une autre table qui me donne les opérations (crédit et dépenses) avec le numéro d'appartement
Compte
Appartement Date Categorie Montant
320 xx xxx 120$
320 ...
320 ...
321 ...

Je souhaite avoir un rapport me donnant l'état de compte de chaque appartement. Pour cela je fais un regroupement sur le numéro d'appartement. Le détails étant les transactions.

Or je n'arrive pas à afficher la liste des propriétaires dans l'en-tête du groupe "appartement".

===== Groupe Appartement =====
Appartement
Propriétaire
------ Détails des transations ----
-Date, Description, Montant
=============================

La seule solution que je vois pour l'instant est d'avoir une requête associant à chaque transaction, la concaténation du nom du / des propriétaires associés. (Un produit cartésien me double les transactions si il y a deux proprios...)

En cherchant sur le forum je n'ai pas trouvé de façon simple de faire cela en SQL pur... La seule option que j'ai trouvée est de faire appelle à GROUP_CONCAT, qui n'est malheureusement pas disponible dans la version actuelle de HSQL (1.8 vs 2.0). Or je ne souhaite pas modifier le moteur de SGBD.

Avez-vous de meilleurs solutions? Suggestions ?

Merci d'avance pour votre aide !

Jean-Pascal
Dernière modification par jarod le 27 mai 2012 19:55, modifié 1 fois.
Open Office 3.4.0 / Mac Os X Snow Leopard
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16483
Inscription : 03 mars 2006 18:02
Localisation : Venise verte

Re: GROUP_CONCAT ou meilleure solution pour générer un rappo

Message par jeanmimi »

Bonjour,
La gestion d'une copropriété a été abordée dans ce fil de messages : http://user.services.openoffice.org/fr/ ... A9#p178674
Tu peux regarder comment le groupement est effectué dans le Rapport.
LibreOffice : Version : 7.5 (x64)(5 février 2023)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
jarod
Fraîchement OOthentifié
Messages : 5
Inscription : 18 mai 2012 00:08

Re: GROUP_CONCAT ou meilleure solution pour générer un rappo

Message par jarod »

Je vais regarder ça de plus près et voir si je trouve une solution.

Merci!
Open Office 3.4.0 / Mac Os X Snow Leopard
jarod
Fraîchement OOthentifié
Messages : 5
Inscription : 18 mai 2012 00:08

Re: GROUP_CONCAT ou meilleure solution pour générer un rappo

Message par jarod »

Malheureusement cela ne répond pas à ma question. L'état ne fait qu'une synthèse et suppose qu'il y a un unique propriétaire par appartement.
Open Office 3.4.0 / Mac Os X Snow Leopard
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16483
Inscription : 03 mars 2006 18:02
Localisation : Venise verte

Re: GROUP_CONCAT ou meilleure solution pour générer un rappo

Message par jeanmimi »

Or je n'arrive pas à afficher la liste des propriétaires dans l'en-tête du groupe "appartement".
Pour avoir une liste de propriétaires, as-tu essayé de les garder dans la section Détail ?
LibreOffice : Version : 7.5 (x64)(5 février 2023)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 20:07
Localisation : Guyane

Re: GROUP_CONCAT ou meilleure solution pour générer un rappo

Message par Piaf »

Bonsoir

Une solution à l'arrache, qui ne fonctionne que si un appartement ne peut pas avoir plus de deux propriétaires.
Si c'est le cas, ça peut le faire en dépannage en attendant ARRAY_AGG () et GROUP_CONCAT () .
A+
 Ajout : Si toujours intéressé par un contournement, voir Ici 
Pièces jointes
Appart.odb
(38.86 Kio) Téléchargé 161 fois
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
jarod
Fraîchement OOthentifié
Messages : 5
Inscription : 18 mai 2012 00:08

Re: GROUP_CONCAT ou meilleure solution pour générer un rappo

Message par jarod »

Merci, je vais creuser ça. Astucieuse l'idée du Min/Max.

Pour l'instant j'ai fait une patch en ajoutant deux champs dans une table pour stocker en plus les proprios actuels. Dès que le nouveau moteur sera supporté par OO, je ferai le changement pour utiliser GROUP_CONCAT.

Merci encore pour votre aide.
Open Office 3.4.0 / Mac Os X Snow Leopard
Répondre