[Résolu] Compatibilité SQL Médiane similaire à Percentile_disc

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.
Belo85
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 juil. 2010 18:05

[Résolu] Compatibilité SQL Médiane similaire à Percentile_disc

Message par Belo85 »

Bonjour,

Existe t'il une fonction médiane comme sur PostGreSQL similaire à Percentile_disc pour Libre Office Base? Je souhaite faire une médiane avec une requête SQL mais je n'y parviens pas.

Merci d'avance.
Dernière modification par Belo85 le 19 août 2024 08:27, modifié 1 fois.
Libre Office 7.2.7.2 / XP 10
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 9703
Inscription : 28 août 2010 08:45

Re: Base - requete SQL Médiane

Message par micmac »

Bonjour,

Titre débarrassé des termes inutiles.
Dans votre signature il y a écrit : OpenOffice.org 3.2.1 / Vista
Votre signature fait mention d'une version d'OpenOffice qui n'est plus maintenue.
Si c'est une obligation ou un choix mentionnez-le par Obligation de version ou Choix dans votre signature afin de ne pas être relancé.

Connaître la version de Apache OpenOffice (AOO) ou LibreOffice (LibO) installée

Afin de profiter des dernières améliorations, pensez à être à jour de la dernière version officielle

Dans votre signature il est nécessaire d'indiquer :
  1. la version exacte de AOO ou LibO (AOO 4.1.15, LibO 7.6.7 par exemple) ;
  2. la version exacte du système d'exploitation (Windows XP SP3, Vista SP2, Windows 7 SP1, Win 8.1, Win 10, Win 11, Ubuntu 22.04, macOS (Intel, M1, M2 ou M3) 14.3.1 Sonoma par exemple).
Accès direct à votre signature pour la corriger.

Cordialement
Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur macOS
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25779
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: requete SQL Médiane

Message par Dude »

Salut,

Sauf à connecter ton ODB à une source PostgreSQL, tu ne peux effectivement pas utiliser de fonction qui ne sont pas normalisées SQL-86 si tu restes dans le format natif HSQLDB.

Voir la documentation sur le sujet pour les fonctions utilisables : viewforum.php?f=34
Belo85
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 juil. 2010 18:05

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par Belo85 »

Bonjour,
Merci pour cet élément, la solution serait donc de trier ma table par ordre croissant puis de récupérer la valeur du milieu mais quelle condition insérer dans le SELECT pour obtenir l'enregistrement du milieu?

Encore merci,
Libre Office 7.2.7.2 / XP 10
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25779
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par Dude »

Si tu veux récupérer une valeur moyenne, tu utilises AVG.
Comme d'habitude...
Image
Comment joindre un fichier au format ODB
Penser également à dépersonnaliser le fichier joint.
Belo85
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 juil. 2010 18:05

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par Belo85 »

Oui mais je ne recherche pas la moyenne et donc cette fonction ne peut pas être utilisée. Je recherche bien la médiane, c'est pour cela que je souhaite dans un premier temps trier par ordre croissant les valeurs puis chercher à sélectionner la valeur qui se trouve au milieu de cette liste.
C'est pour cette dernière requête que je souhaitais savoir si un SELECT avec un numéro de ligne était possible?

Merci encore,
Libre Office 7.2.7.2 / XP 10
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25779
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par Dude »

Il y a une raison à ne pas fournir un ODB ?
Belo85
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 juil. 2010 18:05

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par Belo85 »

Si je comprends bien, vous me demandez pourquoi je n'utilise pas une connexion à PostgreSQL par exemple?
Si c'est le cas c"est que je n'"ai pas la possibilité d'installer d'autres applications sur mon pc pro.

Merci
Libre Office 7.2.7.2 / XP 10
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25779
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par Dude »

Belo85 a écrit : 31 juil. 2024 20:29 Si je comprends bien
Non tu ne comprends pas. Pour la 3e fois, je te demande de joindre un fichier.
Un ODB avec les tables et suffisamment de données pour qu'on puisse comprendre ce que tu cherches à obtenir comme résultat.
Belo85
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 juil. 2010 18:05

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par Belo85 »

Bonjour,

Excusez moi.
Voici un fichier de test avec une table .csv contenant 3 champs:
DEP : département pour filtrer la médiane par département
CRITERE : critère pour filtrer la médiane par critère
VALEUR: valeur sur laquelle je cherche à faire la médiane

Je cherche à avoir la médiane calculée par DEP / CRITERE.

Merci encore pour votre aide.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office 7.2.7.2 / XP 10
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 17132
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par jeanmimi »

Bonjour,
Belo85 a écrit : 12 août 2024 07:58 DEP : département pour filtrer la médiane par département
CRITERE : critère pour filtrer la médiane par critère
VALEUR: valeur sur laquelle je cherche à faire la médiane
Pourquoi passer par Base plutôt qu'utiliser les filtres de Calc ?
LibreOffice : Version : 24.8.3.2 (x64)(19 novembre 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Belo85
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 juil. 2010 18:05

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par Belo85 »

Bonjour,
C'est que les traitements sont lourds à réaliser sur le nombre d'enregistrements. De plus, j'ai mis un critère pour l'exemple mais il y en a plusieurs pour la BDD réelle. J'ai aussi différentes médianes à réaliser et le traitements par SQL me semble plus rapide et plus fiable (j'avais auparavant réalisé cela sous Excel mais le traitement bloquait tout mon PC pendant plusieurs minutes).
Merci
Libre Office 7.2.7.2 / XP 10
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 17132
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par jeanmimi »

Belo85 a écrit : 13 août 2024 14:44 j'avais auparavant réalisé cela sous Excel mais le traitement bloquait tout mon PC pendant plusieurs minutes
Avec ma version, le résultat du Filtre standard avec les deux paramètres CRITERE =A et DEP=1 est immédiat.
Et dans Calc, la médiane se calcule facilement alors que dans Base, il n'y a pas de commande SQL pour le faire, comme indiqué par Dude.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice : Version : 24.8.3.2 (x64)(19 novembre 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Belo85
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 juil. 2010 18:05

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par Belo85 »

Merci pour ces explications et la démonstration.

Je comprends le principe mais comme spécifié , j'ai de nombreux critères à faire varier et autant de médianes à calculer, je voulais donc savoir si même en l'absence de fonction médiane SQL sous Base, je pouvais construire une instruction pour m'en sortir?
Je note que cela paraît compliqué à faire et je vais rester sous Calc ou PostGres.

Merci à vous,
Libre Office 7.2.7.2 / XP 10
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 17132
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par jeanmimi »

La requête possible dans Base pourrait être :

Code : Tout sélectionner

SELECT "DEP", "CRITERE", "VALEUR" FROM "T_données" WHERE "DEP" = ? AND "CRITERE" = ? ORDER BY "VALEUR" ASC
Et pour calculer la médiane, il faut ensuite afficher le résultat de la requête dans Calc et appliquer la fonction MEDIANE sur la zone de cellules sélectionnées.
LibreOffice : Version : 24.8.3.2 (x64)(19 novembre 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Belo85
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 juil. 2010 18:05

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par Belo85 »

Bonjour,

Effectivement cela me permet de faire le calcul de la médiane.

Merci à vous.
Libre Office 7.2.7.2 / XP 10
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 9703
Inscription : 28 août 2010 08:45

Re: Compatibilité SQL Médiane similaire à Percentile_disc

Message par micmac »

Pour clore votre sujet :
  • Placez-vous sur le premier message de votre fil de discussion
  • En haut à droite de ce message, cliquez sur le bouton du petit crayon pour modifier.
  • Modifiez le titre du message en cochant l'icône Image et en tapant [Résolu] (respectez la mise en forme donnée) comme illustré ci-dessous :

    Image
Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur macOS