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

ASP Discussion :

Compter sans les doublons


Sujet :

ASP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 125
    Points : 52
    Points
    52
    Par défaut Compter sans les doublons
    Bonjour

    Voila je n'arrive pas à compter le nombre de pays ayant passé une commande SANS les doublons.

    Par exemple sur l'image, le 1er produit = 1 pays seulement et le 2eme = 2 pays

    Mais mon code actuel m'affiche ca de mon tableau apres recupération:
    H06396-L010 - France - 2
    H06396-O004 - Espagne - 1
    H06396-O004 - France - 2
    H06740-F001 - France - 1
    H06740-G004 - Espagne - 2
    H06740-G004 - Saudia Arabia - 2
    H06740-G005 - Espagne - 1
    H06740-G005 - Saudia Arabia - 2
    ce n'est donc pas trop ce que je veux.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    dim best(13,8) ,pays(20,3)
     
    'le tableau best contient donc les infos de l'image
    'best(x,3) = produit
    'best(x,8) = nom pays
     
     
     
    'Tableau des pays qui ont commandés 
        i=1
        k=0
        do while best(i,1) <> ""    
            t=0
            for j = 1 to 20
                if (best(i,8) = pays(j,2) and best(i,3) = pays(j,1)) then
                    doublee = true
                    exit for
                else
                    doublee = false
                end if
            next
            t=t+1
            if not doublee then
                k=k+1
                pays(k,1) = best(i,3)
                pays(k,2) = best(i,8)
                pays(k,3) = pays(k,3) + t
            else
                pays(k,3) = pays(k,3) + t
                'i=i+1
            end if
            i=i+1
        loop
    Merci,
    Images attachées Images attachées  

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 168
    Points : 196
    Points
    196
    Par défaut
    Si j ai bien compris tu voudais un resultat un peu comma ca :
    ...L010 - 1
    ...O004 - 2
    ...F001 - 1
    ...G004 - 2

    Tu n utilises pas de base de donnes ? sinon tu peux utiliser le group by en sql sur ta tabke de commandes en utilisant seulement les champs commandes et pays.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 125
    Points : 52
    Points
    52
    Par défaut
    Avec cette requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT prod_id,count(*) FROM [dbo].[command] group by prod_id
    Il m'affiche 2 pays pour le 1er produit or il n'y a qu'un seul pays pour ce produit mais dont il y a 2 enregistrements.

    Pareil donc avec le code ma page asp...

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 125
    Points : 52
    Points
    52
    Par défaut
    Alors il faut passer par une sous requete:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select prod_id,count(*) from (SELECT distinct prod_id,user_country FROM [dbo].[command] ) as e group by prod_id

    Et la je recupere bien sans les doublons!!

    C'est sql quand meme

    Merci encore,

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

Discussions similaires

  1. Compter les fournisseurs sans les doublons
    Par Mathsdeb dans le forum Excel
    Réponses: 14
    Dernier message: 26/02/2015, 21h12
  2. Compter le nombre de lignes sans les doublons
    Par byrdo dans le forum Excel
    Réponses: 15
    Dernier message: 15/06/2007, 15h30
  3. Compter sans les doublons
    Par sentenza dans le forum Access
    Réponses: 4
    Dernier message: 19/03/2007, 17h20
  4. Réponses: 3
    Dernier message: 24/04/2006, 20h56
  5. tri a bulle sans les doublons
    Par comme de bien entendu dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 10/03/2003, 17h29

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