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 :

combinaison de deux requetes


Sujet :

Langage SQL

  1. #1
    Membre régulier

    Profil pro
    Inscrit en
    Février 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 206
    Points : 100
    Points
    100
    Par défaut combinaison de deux requetes
    Bonsoir,
    Dans l'une de mes requetes j'effectue un select count(id_fichier) from fichier;
    A tout hasard serait il possible de realiser un select * from fichier par la meme occasion? J'ai esayé avec une virgule mais sans succes.
    Merci

  2. #2
    Expert éminent
    Homme Profil pro
    Big Data / Freelance EURL
    Inscrit en
    Mars 2003
    Messages
    2 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Big Data / Freelance EURL

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 124
    Points : 7 291
    Points
    7 291
    Par défaut
    non ce n'est pas possible d'utiliser le mot clé '*' dès lors qu'il y a une fonction d'agrégation (en l'occurence count).

    Dans ce cas il faut écrire à la main tout les champs. Ceci pour que le count sache en fonction de quoi il compte.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select id_fichier,nomfichier,repertoire_fichier,count(*)
    from fichier
    group by id_fichier,nomfichier,repertoire_fichier
    Mais je ne comprends pas trop la question.

  3. #3
    Membre régulier

    Profil pro
    Inscrit en
    Février 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 206
    Points : 100
    Points
    100
    Par défaut
    en fait j'aurai voulu savoir si il existait un moyen de faire select *,count(*)
    from table;

    mais apparament tu es obligé d'enoncé tous les champs de ta table afin de les selectionner ce qui peut etre un peu fastidieux pour une table ayant beaucoup de champs

  4. #4
    Expert éminent
    Homme Profil pro
    Big Data / Freelance EURL
    Inscrit en
    Mars 2003
    Messages
    2 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Big Data / Freelance EURL

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 124
    Points : 7 291
    Points
    7 291
    Par défaut
    non ce n'est pas possible et ça n'a pas trop de sens.
    En effet un select contenant tout les champs aura forcément un count égal à 1.

  5. #5
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 115
    Points : 28 493
    Points
    28 493
    Par défaut
    Citation Envoyé par Adren
    en fait j'aurai voulu savoir si il existait un moyen de faire select *,count(*)
    from table;

    mais apparament tu es obligé d'enoncé tous les champs de ta table afin de les selectionner ce qui peut etre un peu fastidieux pour une table ayant beaucoup de champs
    Tout dépend de ton SGBD.
    S'il prend en charge les fonctions d'analyse ANSI-99, tu peux faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select *, count(*) over ()
    from matable
    qui te donnera le contenu de la ligne et le nombre de lignes de l'ensemble retourné

Discussions similaires

  1. Réponses: 7
    Dernier message: 14/10/2005, 21h00
  2. division des resultats de deux requetes
    Par decour dans le forum Access
    Réponses: 1
    Dernier message: 14/10/2005, 11h42
  3. Combinaison de deux selects simples
    Par devtrax dans le forum Langage SQL
    Réponses: 5
    Dernier message: 09/09/2004, 15h09
  4. fusionner le résultat de deux requetes
    Par sami_c dans le forum Requêtes
    Réponses: 2
    Dernier message: 29/05/2004, 10h56
  5. jointure entre deux requete
    Par Youssef dans le forum Langage SQL
    Réponses: 21
    Dernier message: 15/01/2004, 16h13

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