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 :

je sais pas comment le faire


Sujet :

Développement SQL Server

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 130
    Points : 95
    Points
    95
    Par défaut je sais pas comment le faire
    Bonjour à tous,

    j'essaye d'utilise TSQL sans passer par mon langage de prédilection...

    voici mon problème :
    Dans une table je doit tester 3 colonnes.

    le première est une clef (PK_APPEL)
    la seconde est un boolean (VU)
    la troisième aussi. (CLOTURE)

    j'aimerais pouvoir afficher une liste d'appel en fonction de PK_APPEL de VU et de CLOTURE

    cas 1 Lister tous les appels vu VU(true) , non cloturé CLOTURE (false)(je sais faire) du PK_APPEL
    cas 2 Lister tous les appels NonVu VU(false), non cloturé CLOTURE(false) (je sais faire) du PK_APPEL
    cas 3 Lister tous les appels NonVu VU(false) et vu VU(True), non cloturé CLOTURE(false) du PK_APPEL, je ne vois pas comment le dire en transact SQL
    Et bien sur les cas ou CLOTURE est à TRUE

    Si quelqu'un peut me sortir de cette impasse..

    Merci d'avance a tous

    Bonne journées

  2. #2
    Membre expert
    Avatar de alassanediakite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2006
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Mali

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 1 599
    Points : 3 590
    Points
    3 590
    Billets dans le blog
    8
    Par défaut
    Salut
    Citation Envoyé par krzysiu Voir le message
    ...
    cas 3 Lister tous les appels NonVu VU(false) et vu VU(True)...
    Je ne vois pas comment cela est possible?
    Le monde est trop bien programmé pour être l’œuvre du hasard…
    Mon produit pour la gestion d'école: www.logicoles.com

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 130
    Points : 95
    Points
    95
    Par défaut
    Merci de t'intéresser à mon cas.

    C'est là mon problème, je voudrai afficher les messages marqué vu (VU=true) et les messages marqué non vu (VU=false) en fait tous les messages, mais je ne sais pas comment l'écrire

    par exemple
    une liste avec tout :
    PK_APPEL ! VU ! CLOTURE
    1 ! 0 !0
    2 ! 0 !0
    3 ! 1 !0
    4 ! 1 !0
    5 ! 0 !0

    puis pouvoir filtrer les non vu :
    PK_APPEL ! VU ! CLOTURE
    1 ! 0 !0
    2 ! 0 !0
    5 ! 0 !0
    ou filtrer les messages vu :
    PK_APPEL ! VU ! CLOTURE
    3 ! 1 !0
    4 ! 1 !0

    en une seule requête si possible. si je le fait dans mon programme, je ferais deux clause WHERE que je pourrais choisir et l'ajouter au SELECT en fonction du cas. mais j'aimerais le faire en TSQL et là je sèche...

    j'espère être clair

  4. #4
    Membre expert
    Avatar de alassanediakite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2006
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Mali

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 1 599
    Points : 3 590
    Points
    3 590
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par krzysiu Voir le message
    ... en fait tous les messages...
    ne mettez pas de WHERE. C'est tout.
    Si vous tenez avoir un ordre (les non vus ensuite les vus), mettez @+
    Le monde est trop bien programmé pour être l’œuvre du hasard…
    Mon produit pour la gestion d'école: www.logicoles.com

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 130
    Points : 95
    Points
    95
    Par défaut
    C'est déjà le cas, mais l'utilisateur peut ensuite trier sur d'autres colonnes au travers d'un grille.

    il faut donc que je puisse lui afficher que les appels vu, que les appels non vu ou les deux

    sinon ce serait trop simple

    Merci

  6. #6
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 130
    Points : 95
    Points
    95
    Par défaut
    j'ai supprimé ce message que j'avais publié en doublon

  7. #7
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 130
    Points : 95
    Points
    95
    Par défaut
    Voici ma solution.... est elle correcte ??

    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
    DECLARE 
      @SQL nvarchar(max),
      @WHERE nvarchar(max),
      @VU int,
      @NON_VU int,
      @CLOTURE int
     
    SET @WHERE=''
    SET @VU=0
    SET @NON_VU=1
    SET @CLOTURE=0
     
    SET @SQL ='SELECT PK_APPEL,FK_DESTINATAIRE,VU,CLOTURE  FROM  T_APPEL WHERE '
    SET @WHERE ='FK_DESTINATAIRE=7 '
     
    if (@VU =0 OR @NON_VU=0)
    BEGIN
     SET @WHERE = @WHERE + 'AND VU =' + CAST(@VU as nvarchar(1))
    END
     
    if @CLOTURE=1
    BEGIN
      SET @WHERE = @WHERE + ' AND CLOTURE =' + CAST(@CLOTURE as nvarchar(1))
    END; 
     
    SET @SQL=@SQL+@WHERE
     
    PRINT @SQL
     
    EXECUTE sp_ExecuteSQL @SQL
    Les testes que j'ai réalisé a l'ai de cette procédure fonctionnent. maintenant, je n'ai plus qu'à la généraliser.

    mais si des experts passent par là, j'attends leurs critiques avec impatience...

    Merci à tous

  8. #8
    Membre expert
    Avatar de alassanediakite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2006
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Mali

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 1 599
    Points : 3 590
    Points
    3 590
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par krzysiu Voir le message
    C'est déjà le cas, mais l'utilisateur peut ensuite trier sur d'autres colonnes au travers d'un grille.
    C'est au niveau de l'EDI (le programme qui réalise la grille) qu'il faut faire ce travail!!!
    @+
    Le monde est trop bien programmé pour être l’œuvre du hasard…
    Mon produit pour la gestion d'école: www.logicoles.com

  9. #9
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 130
    Points : 95
    Points
    95
    Par défaut
    Citation Envoyé par alassanediakite Voir le message
    C'est au niveau de l'EDI (le programme qui réalise la grille) qu'il faut faire ce travail!!!
    @+
    Justement, c'est ce que je voudrais éviter. je pense que les temps de réponses sont meilleurs si SQL Server ne me renvoie un résultat déjà préparé. mon appli devant fonctionner en mode web, je crois que c'est plus judicieux.

    en tout cas merci de vous intéresser à mon cas

    bon WE

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

Discussions similaires

  1. [AC-2007] Requête sur 2 tables mais je ne sais pas comment la faire ?
    Par tibofo dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 09/01/2012, 01h01
  2. pb dans mon script, je sais pas comment faire
    Par gengiskhan72 dans le forum C
    Réponses: 5
    Dernier message: 30/06/2009, 21h16
  3. Je ne sais pas comment faire ça :
    Par piteon dans le forum Flash
    Réponses: 8
    Dernier message: 17/08/2006, 04h08
  4. Réponses: 2
    Dernier message: 31/05/2006, 16h13
  5. [XML] Je ne sais pas comment faire...
    Par New dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 11/10/2005, 11h47

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