Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Créer 2 colonne à partir des données d'une troisième [ DB2 / Débutant(s) ] (pintux)

samedi 8 novembre 2008 à 10:28:21 | Créer 2 colonne à partir des données d'une troisième

pintux

Bonjour à tous,

J'ai une base dont une des colonnes contient des données de type dates, j'assaye de créer 2 nouvelles colonnes à partir des données de ces dates. J'ai besoin de créer une colonne ANNEE N et une colonne ANNEE N-1 afin de comparer des activités entre 2 années consécutives. Etant débutant, je rencontre des difficultés, pour aboutir à un tel résultat, j'ai essayé quelque chose de ce goût la :

Declare @pAnnee int

@pAnnée = '2008'

SELECT

Year(Date) 'ANNEE N'

FROM MyTable

WHERE  Year(Date) IN (@pAnnée)

 

UNION

 

SELECT

Year(Date) 'ANNEE N-1'

FROM MyTable

WHERE  Year(Date) IN (@pAnnée-1)

 

Mais visiblement Une seule colonne est crée (ANNNEE N), et cette dernière regroupe toute les années!!!

 

 

MERCI pour toute aide apportée

 

Philippe


samedi 8 novembre 2008 à 14:37:45 | Re : Créer 2 colonne à partir des données d'une troisième

hymnuade

Salut,

Ta requête contient un UNION ce qui implique l'association de plusieurs résultats de requêtes, donc la première colonne de ta première partie de requête correspondra à ta première colonne de seconde requête. En l'espèce, ANNEE N-1 dans ta seconde requête apparaître dans les résultats de ANNEE N.

Pour faire ce que tu veux, tu peux plutôt t'orienter vers :

Ta table contient 3 colonnes Date | Annee | Annee N-1
Si seul Date est remplie tu dis mettre les 2 autres colonnes à jour.
Si Anne et Annee N-1 sont des colonnes de type entier, par exemple

UPDATE MyTable SET Annee = DATEPART(year,Date), [Annee N-1] = DATEPART(year, Date) - 1

Ta table sera donc mise à jour.

Tu peux faire le -1 pour annee N-1 car DATEPART sur year te renvoie un numérique.

mercredi 12 novembre 2008 à 10:06:06 | Re : Créer 2 colonne à partir des données d'une troisième

pintux

Bonjour hymuade,

Ce que tu dis est  tout à fait exact, c'est pourquoi j'ai trouvé une solution de contournement par:

Year(DATE)'ANNEE N-1',

0 'ANNEE N',

Month(DATE)AS MOIS,

from MyTable WITH(NOLOCK)

whereYear(DATE)=@pAnnee-1

groupbyYear(DATE),Month(DATE)

UNION

select

0 'ANNEE N-1',

Year(DATE)'ANNEE N',

Month(DATE)AS MOIS,

from MyTable WITH(NOLOCK)

whereYear(DATE)=@pAnnee

groupbyYear(DATE_),Month(DATE)

 

ORDERBYYear(DATE)  DESC,Month(DATE)DESC;

Cela permet de répondre à la contrainte, qui était la création et le peuplement de 2 colonnes à partir d'une troisième colonne et en fonction des données extraient.

J'espère que cela pourra être utile à d'autres personnes, en tout cas merci pour tes remarques , toutes à fait judicieuses.

Cordialement

Philippe




Cette discussion est classé dans : créer, données, style, colonne, mso


Répondre à ce message

Sujets en rapport avec ce message

partager une application de base de données sql 2000 [ par reefi ] salut j'ai un problème qui consiste :<meta name="Originator" content="Micro Créée 2 nouvelles colonnes à partir des données d'une troisième [ par pintux ] <link rel="Fi Cohabitation sql 2005 express et sql 2000 [ par dede2644 ] <link rel="Fi Cours et exercices :Base de données [ par walidtheking1985 ] <link rel="Fi creer une colonne d'ordre dans une table [ par tayebrabehi ] salut ,J'ai une table MATABLE select * from matable;-----------------------------------------|   NOM       |    D_NSANCE    |------------------------- base de données géographique [ par moi1986 ] salutje veux utiliser PostgresSQL pour créer une base de données géographique.cette base contient ttes les proprietés d'une ville.Celà me sert pour de base de données géographique [ par moi1986 ] salutje veux utiliser PostgresSQL pour créer une base de données géographique.cette base contient ttes les proprietés d'une ville.Celà me sert pour de Modèle E-R et Conceptuel+requêtes [ par MissCile ] Voilà, je suis supposée faire un projet comprenant : un modèle E-R un modèle conceptuel </l Suppression dans deux tables [ par MissCile ] Hello!J'ai trois tables : Employés (NomE, prenomE, n°employeE,adresse,statut)Caissiers ( N°employeC,n°caisse)Reassortisseurs (N° employeR, Ndepartemen créer une procédure stockée qui renvoie des données [ par bossun ] salut,je ne connais pas vraiment oracle. je voudrais créer une procédure stockée qui me renvoie des données pour des besoins spécifiques...dans sql se


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,281 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.