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

Langage SQL Discussion :

Problème à la formulation d'une requête


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services à domicile

    Informations forums :
    Inscription : Septembre 2005
    Messages : 202
    Points : 124
    Points
    124
    Par défaut Problème à la formulation d'une requête
    Bonjour,
    J'ai un problème d'écriture pour effectuer la requête suivante :
    J'ai une table "dossier" avec un champ contenant l'identifiant du propriétaire
    et un champ définissant si le dossier est privé ou public (1 ou 0).
    Ce que je cherche à faire c'est :
    afficher les dossiers de tout le monde sans pour autant voir ceux qui sont
    privé appartenant aux autres users mais je dois pouvoir voir mes dossiers
    privés dans la liste.

    En sachant que je suis l'user ayant l'id 1 je souhaite qu'en partant de ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    +---------+-------+
    | id_user | prive |
    +---------+-------+
    | 1       | 0     |
    | 1       | 1     |
    | 2       | 0     |
    | 2       | 1     |
    | 3       | 0     |
    | 3       | 1     |
    +---------+-------+
    Je puisse avoir ceci comme résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    +---------+-------+
    | id_user | prive |
    +---------+-------+
    | 1       | 0     |
    | 1       | 1     |
    | 2       | 0     |
    | 3       | 0     |
    +---------+-------+
    J'ai testé plusieurs trucs mais rien à faire, je ne vois pas du tout comment formuler cette requête...
    Qui à une idée ?
    Merci

  2. #2
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    bjour..

    j´ai pas du comprendre le problème:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     select * from Ta_table where id_user = Ton_id_user
     union
     select * from Ta_Table where id_user <> Ton_id_user and prive = 0;

  3. #3
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2010
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2010
    Messages : 44
    Points : 69
    Points
    69
    Par défaut
    Bonsoir,

    Une variante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     SELECT * FROM Ta_table WHERE id_user = Ton_id_user OR prive = 0;
    Cdlt,
    OD

  4. #4
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services à domicile

    Informations forums :
    Inscription : Septembre 2005
    Messages : 202
    Points : 124
    Points
    124
    Par défaut
    Je n'avais pas pensé à utiliser UNION mais après un premier essai ça tourne.
    Merci pour le coup de main

    Stéphane

  5. #5
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 388
    Points
    18 388
    Par défaut
    La solution avec le OR sera beaucoup plus performante.

  6. #6
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services à domicile

    Informations forums :
    Inscription : Septembre 2005
    Messages : 202
    Points : 124
    Points
    124
    Par défaut
    je vais tester cette solution histoire de voir.
    merci à vous tous

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

Discussions similaires

  1. [10g] Problème de privilège dans une requête
    Par hotkebab99 dans le forum Oracle
    Réponses: 6
    Dernier message: 01/03/2006, 12h00
  2. Problème de perfomances dans une requête
    Par claralavraie dans le forum Langage SQL
    Réponses: 1
    Dernier message: 05/01/2006, 14h25
  3. [SQL] Problème de résultat avec une requête
    Par raptorman dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 04/01/2006, 17h16
  4. Problème de débutant dans une requête
    Par decour dans le forum Access
    Réponses: 7
    Dernier message: 14/10/2005, 14h17
  5. problème de formulation d'une requête
    Par seiryujay dans le forum Langage SQL
    Réponses: 4
    Dernier message: 20/08/2004, 17h13

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