IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes PostgreSQL Discussion :

Aide sur requête SQL


Sujet :

Requêtes PostgreSQL

  1. #1
    Candidat au Club
    Femme Profil pro
    DATA ANALYST
    Inscrit en
    Décembre 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : DATA ANALYST

    Informations forums :
    Inscription : Décembre 2023
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Aide sur requête SQL
    Bonjour,
    Je suis débutante dans le monde du sql.
    J'ai besoin d'écrire une requête mais je ne trouve pas la logique :

    J'ai un ensemble de données : Ex :

    id / date de création / champ
    1 / 18122023 / created
    1 / 18122023 / owner
    1 / 15122023 / taux

    Quand il est indiqué created dans la colonne champ, si dans la table je trouve le même id et la même date alors je dois indiquer dans une colonne (case when) 1 sinon 0. Donc pour la 1ère et la 2ème ligne => 1 et pour la 3è ligne 0.
    Mais je ne sais pas comment définir en sql cet ensemble de données (si created alors si tu trouves le même id et la même date de la ligne created alors tu mets 1).
    Merci de votre aide.
    Je fais mes requêtes via power bi, postgre.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Bonjour,
    Je ne connais pas Power Bi, mais en SQL ça donne un truc du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select distinct t1.id,t1.DateCreation,t1.champ,(case when t1.Champ = 'created' and t2.id is not null then 1 else 0 end) as LaColonneCalculee
    from LaTable as t1
    left outer join latable as t2 on t1.id = t2.id and t1.DateCreation = t2.DateCreation and t1.Champ <> t2.Champ
    Tu peux aussi mettre les critères dans la jointure:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select distinct t1.id,t1.DateCreation,t1.champ,(case when t2.id is not null then 1 else 0 end) as LaColonneCalculee
    from LaTable as t1
    left outer join latable as t2 on t1.id = t2.id and t1.DateCreation = t2.DateCreation and t1.Champ = 'Created' and t2.Champ <> 'Created
    Tatayo.

  3. #3
    Candidat au Club
    Femme Profil pro
    DATA ANALYST
    Inscrit en
    Décembre 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : DATA ANALYST

    Informations forums :
    Inscription : Décembre 2023
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci Tatayo, mais les deux solutions me retournent 0

  4. #4
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Essayez comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select id, DateCreation, champ
         , max(case champ when 'created' then 1 else 0 end) over(partition by id, DateCreation) as id_created
      from MaTable;

  5. #5
    Candidat au Club
    Femme Profil pro
    DATA ANALYST
    Inscrit en
    Décembre 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : DATA ANALYST

    Informations forums :
    Inscription : Décembre 2023
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci beaucoup, ça fonctionne !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Aide sur requete SQL
    Par rippoz dans le forum Langage SQL
    Réponses: 4
    Dernier message: 05/07/2007, 11h46
  2. [MS Query] neophyte demande aide sur jointures SQL
    Par thorgal972 dans le forum Langage SQL
    Réponses: 19
    Dernier message: 27/11/2006, 17h13
  3. [Oracle 9.2] Aide sur script SQL
    Par fmoriet dans le forum Langage SQL
    Réponses: 3
    Dernier message: 01/02/2006, 08h25
  4. aide sur requête sql
    Par Vodkha dans le forum Langage SQL
    Réponses: 9
    Dernier message: 30/08/2005, 17h53
  5. Aide sur Requête SQL
    Par devdev dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 11/05/2005, 12h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo