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 :

Ajout d'un champ dans une requete


Sujet :

Langage SQL

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    490
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 490
    Points : 201
    Points
    201
    Par défaut Ajout d'un champ dans une requete
    bonjour,

    j'ai une table frais avec une date et une clé étrangère TotalFrais.

    j'ai donc plusieurs frais correspondant à NumtotalFrais :

    frais --------date-----------NumTotalFrais
    121*******12/01/2006*******4
    122*******15/01/2006 ******4
    123*******23/01/2006******4

    je souhaiterai avoir un nouveau champ qui me donne la date mini et maxi pour avoir

    NumTotalFrais-----------------NewChampDate
    4******************12/01/2006-23-01/2006

    j'ai fait une requete :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT NumTotalFrais, min(date) as NewChampDate FROM frais
    mais ce que je veux c'est concaténer les deux valeur min(date)"-"max(date). est ce possible de faire cela ?
    merci d'avance...

  2. #2
    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
    j'ai fait une requete :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT NumTotalFrais, min(date) as NewChampDate FROM frais
    mais ce que je veux c'est concaténer les deux valeur min(date)"-"max(date). est ce possible de faire cela ?
    merci d'avance...[/quote]
    Oui, c'est possible.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT NumTotalFrais
      ,  cast(min(date) as varchar(10)) || '-' || cast(max(date) as varchar(10))
    FROM frais 
    GROUP BY NumTotalFrais
    Toutefois, ce serait mieux de faire une requête qui calcule les valeurs et laisser la mise en forme (concaténation, conversion en chaîne) à la couche de restitution (ton programme)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT NumTotalFrais
      ,  min(date)
      ,  max(date) 
    FROM frais 
    GROUP BY NumTotalFrais

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    490
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 490
    Points : 201
    Points
    201
    Par défaut
    un cast bien sur....
    merci beaucoup !

Discussions similaires

  1. Ajouter un champ dans une requete
    Par pascal_70 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 08/03/2008, 11h25
  2. Réponses: 5
    Dernier message: 26/04/2006, 08h51
  3. comment supprimer un champ dans une requete ??
    Par loran v2 dans le forum Bases de données
    Réponses: 2
    Dernier message: 24/03/2006, 21h41
  4. Création de champ dans une requete
    Par CCRNP dans le forum Access
    Réponses: 2
    Dernier message: 20/10/2005, 23h15
  5. Choix entre deux champs dans une requete
    Par Pico10 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 27/07/2005, 16h36

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