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

SQL Oracle Discussion :

selection en sql


Sujet :

SQL Oracle

  1. #1
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 99
    Points : 43
    Points
    43
    Par défaut selection en sql
    Bonjour,,tout le monde
    comment peut on selectionner les noms et les salaires sans redondance .
    par exp:
    SMITH 5000
    CLERCK 5000
    ALEN 2000 alors dans ce cas j'affiche SMITH 5000
    ALEN 2000
    j'ai fait ca
    cursor cursor_emp is select distinct sal from emp x
    where ename in(select ename from emp y where x.sal =y.sal)
    order by sal desc;
    mais ce que je veux moi c les ename et les salaires

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Avril 2006
    Messages : 16
    Points : 15
    Points
    15
    Par défaut
    Bonjour,
    Il faut savoir que SQL est un langage qui part d'une relation matérialisée (table) que l'on spécifie dans la clause FROM et retourne aussi une relation (c'est pas par hazard que SQL est un langage de gestion de BD relationnelles).
    On peut comprendre par relation, que les valeurs des colonnes qui constituent une ligne aient une relation logique. Dans ton exemple, (SMITH, 5000), la relation est simple: le salaire de SMITH est 5000.
    Donc on ne peut demander à SQL de nous afficher une relation insignifiante... ce que tu demandes à ce que j'ai compris. Dans ton résultat, quelle est la relation entre SMITH et 5000? pourquoi ne pas afficher CLARK 5000 au lieu de SMITH 5000? en d'autres termes, tu as employés ayant le même salaire (SMITH et CLARK), pourquoi tu veux afficher SMITH et non CLARK ????
    Donc ce que tu peux faire, c'est ou bien l'affichage des salaires distincts:
    SELECT DISTINCT sal FROM emp;
    ou les ename distincts... et ils le sont logiquement !
    SELECT DISTINCT ename FROM emp;
    Tu peux aussi afficher les couples (ENAME, SAL) distincts, mais ils le sont de nature puisque ENAME est logiquement UNIQUE:
    SELECT DISTINCT ename,sal FROM emp;

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

Discussions similaires

  1. [C#] Comment faire un simple SELECT à SQL Server ?
    Par Rodie dans le forum Accès aux données
    Réponses: 15
    Dernier message: 30/10/2006, 18h04
  2. [SQL] <Select> + Requete Sql
    Par samus535 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 13/06/2006, 19h42
  3. utilisation de la requete select de sql
    Par pepper18 dans le forum SGBD
    Réponses: 3
    Dernier message: 31/05/2006, 15h01
  4. Selection enregistrement sql...
    Par d2g dans le forum Requêtes
    Réponses: 3
    Dernier message: 12/10/2005, 15h15
  5. Select dans SQL n'accepte pas la virgule
    Par da_latifa dans le forum Langage SQL
    Réponses: 7
    Dernier message: 06/10/2005, 16h22

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