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

Développement SQL Server Discussion :

Colonne avec plusieurs valeurs [2005]


Sujet :

Développement SQL Server

  1. #1
    Membre averti
    Avatar de taibag
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Inde

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

    Informations forums :
    Inscription : Septembre 2013
    Messages : 214
    Points : 357
    Points
    357
    Billets dans le blog
    1
    Par défaut Colonne avec plusieurs valeurs
    Bonjour ;
    J’ai une table produit (id, value, host, application_id, key_id ,app)
    Sur la colonne Value on a stocké plusieurs type (date,nvarchar, …) et chaque valeur ayant un key_id différent.
    Exemple : pour le key_id =31 je voudrais créer une requête qui me fait le count de chaque value différent.

    Ma requête actuelle est la suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    select t1.value as 'Agent',count(*) as 'Count'
    from dbo.produit t1 
    inner join  dbo.produit t2 on t1.pp = t2.pp and t2.key_id = 39
    inner join  dbo.produit t3 on t1.pp = t3.pp and t3.key_id = 31
    where t1.key_id=8
    and t2.value between '2013/11/07 06:10:00' and '2013/11/07 23:30:00'
    and t3.value like 'Produit1%'
    group by  t1.value
    order by t1.value asc
    Je dois la modifier pour chaque produit …
    Merci d’avance.
    मैं एक छात्र हूँ |

  2. #2
    Membre actif Avatar de ccambier
    Profil pro
    Consultant ERP
    Inscrit en
    Octobre 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Octobre 2006
    Messages : 256
    Points : 267
    Points
    267
    Par défaut
    Bonjour,

    Si je comprends bien ta table contient des produits qui, selon leur KEY_ID, auront des VALUE de nature différente !?
    Ta difficulté ne viendrait pas d'un problème conceptuel à la base ?

    Dans ce cas-ci tu vas avoir autant d'INNER JOIN que de produit dans ta table !?

    Pourrait-on avoir le CREATE TABLE et quelques exemple de données qui s'y trouvent ?

    Merci

  3. #3
    Membre averti
    Avatar de taibag
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Inde

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

    Informations forums :
    Inscription : Septembre 2013
    Messages : 214
    Points : 357
    Points
    357
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Je m’explique avec un exemple en jointure: Table1.xlsx

    Sur un bloc de 20 lignes qui a un seul APP cela désigne un seul produit avec ses caractéristiques d’où l’auto jointure

    Ce qui m’intéresse c’est bien le key_id 31 qui est variable :
    Exemple :
    Produit_A_38 ,39….
    Produit_B_40…
    Produit_XA_1….etc.
    Je voudrais le récupérer de cette façon ;

    Count(*) Produit 1 Produit 1 Produit 1 Produit N
    1 2 3 4

    Merci.
    मैं एक छात्र हूँ |

  4. #4
    Membre averti
    Avatar de taibag
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Inde

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

    Informations forums :
    Inscription : Septembre 2013
    Messages : 214
    Points : 357
    Points
    357
    Billets dans le blog
    1
    Par défaut
    Autre précision je ne veux pas avoir tous les produits détaillés mais je veux les regrouper de cette manière :
    Exemple :
    Produit_A% qui a des suite 1,2,3…N.
    मैं एक छात्र हूँ |

  5. #5
    Membre actif Avatar de ccambier
    Profil pro
    Consultant ERP
    Inscrit en
    Octobre 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Octobre 2006
    Messages : 256
    Points : 267
    Points
    267
    Par défaut
    Bonsoir,

    En fait si je comprends bien, pour chaque "Agent" (t1.value) tu veux avoir le nombre de valeurs différentes pour chaque Key_ID ?

    Il faut que tu essayes alors les requêtes PIVOT, car tu dois avoir pour chaque agent le nombre de valeur différente pour chaque key_id

    comme le résultat ci-dessous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    		key 31		key 39		key 25
    Agent 1 	3	         2			1
    Agent 2		1		1			3
    Agent 3		5		3			3
    http://technet.microsoft.com/en-us/l...=sql.105).aspx

  6. #6
    Membre averti
    Avatar de taibag
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Inde

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

    Informations forums :
    Inscription : Septembre 2013
    Messages : 214
    Points : 357
    Points
    357
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Merci, je vais essayer cela et je te reviens.
    मैं एक छात्र हूँ |

  7. #7
    Membre averti
    Avatar de taibag
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Inde

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

    Informations forums :
    Inscription : Septembre 2013
    Messages : 214
    Points : 357
    Points
    357
    Billets dans le blog
    1
    Par défaut
    Bonjour ccambier ,

    Cela m'a aidé , cependant la liste d'éléments de l'opérateur IN est une liste prédifinis, j'ai vu qu'on peut pas la généréer à partir d’une sous requête select pour récupérer tous les enregistrements de la table.

    Ma question est comment rendre cela dynamique ?

    Merci.
    मैं एक छात्र हूँ |

  8. #8
    Membre actif Avatar de ccambier
    Profil pro
    Consultant ERP
    Inscrit en
    Octobre 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Octobre 2006
    Messages : 256
    Points : 267
    Points
    267
    Par défaut
    Bonjour,

    à ma connaissance je ne pense pas que l'on puisse rendre cela dynamique
    à moins d'utiliser une procédure stockée pour construire la requête dynamiquement.
    Mais si vous trouvez la solution pour la rendre dynamique je serais intéressé

  9. #9
    Membre averti
    Avatar de taibag
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Inde

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

    Informations forums :
    Inscription : Septembre 2013
    Messages : 214
    Points : 357
    Points
    357
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    En fait j'ai trouvé comment récupérer tous les produits dans une seule requête ce n'est pas l'idéal mais cela marche quand même sql_stat.sql

    Si vous avez des suggestions je vous serais reconnaissant.
    मैं एक छात्र हूँ |

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

Discussions similaires

  1. Colonne avec plusieurs valeurs
    Par neliam dans le forum Langage SQL
    Réponses: 10
    Dernier message: 11/04/2008, 13h20
  2. Update d une table avec plusieurs valeurs
    Par Nadaa dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 17/05/2006, 08h58
  3. [Excel] Filtre de colonne avec la valeur d'une cellule
    Par repié dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 13/04/2006, 14h58
  4. Trier une colonne avec des valeurs numériques ou textes
    Par jfc dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 07/02/2006, 11h15
  5. case/when avec plusieurs valeurs pour le then
    Par Neo41 dans le forum Langage SQL
    Réponses: 7
    Dernier message: 02/09/2005, 15h58

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