Accueil > Forum > > > > Calculer des différences sous certaines conditions
Calculer des différences sous certaines conditions
mardi 13 décembre 2005 à 19:24:25 |
Calculer des différences sous certaines conditions

JoeyBlack
|
Bonjour
J'ai une table de type : date Date, valeur Float. J'aimerai créer une
nouvelle table contenant le même type de champs : date Date, valeur2
Float.
Je veux que valeur2(date) = valeur(date)-valeur(date précédente), la
date précédente n'étant pas forcement égale à la date -1 mais est le
maximum des dates précédent la date en question.
Quelqun (un bon ;) )peut-il m'aider à faire une requete rapide a faire sur un nombre important de données (700000) ?
Merci bcp
JoeyBlack
|
|
mardi 13 décembre 2005 à 20:52:16 |
Re : Calculer des différences sous certaines conditions

nhervagault
|
Salut
Peux tu mettre un exemple de temple départ et arrive car un exemple vaut mieux qu'un long discours.
Et mettre le type de base
thanks
|
|
mardi 13 décembre 2005 à 21:37:33 |
Re : Calculer des différences sous certaines conditions

JoeyBlack
|
Départ :
2005-12-02 30.46
2005-12-05 29.95
2005-12-06 30.34
2005-12-07 30.12
2005-12-08 29.81
2005-12-09 29.98
2005-12-12 29.89
Et je veux à l'arrivé :
2005-12-05 -0.51
2005-12-06 0.39
2005-12-07 -0.22
2005-12-08 -0.31
2005-12-09 0.17
2005-12-12 0.09
Par contre je suis un peu débutant dans
tout ce qui est base de données. Le "type" de base je sais pas trop de
quoi tu parles, en tout cas j'utilise MySQL 5.0.
J'espère que c tout ce que tu voulais savoir :S.
|
|
mardi 13 décembre 2005 à 23:30:54 |
Re : Calculer des différences sous certaines conditions

nhervagault
|
C'est assez chaud à faire
car les bases de données ne sont pas faites pour faire ce genre de traitement
Pour faire cela il faudrait je pense utiliser les procédures stockées ou un programme qui est plus adaptée car les BDD ne sont pas faite pour des traitements entre lignes mais entre table ;-)
et de faire la liasons dessus num est le numero de la ligne il y a peut etre une fonction sql pour le faire
Ensuite
faire une requete du style
select A1, B2-A2,b.num, a.num from A, B where A.num = B.Num +1
Attention l'ordre des lignes est important aussi, je ne maitrise pas les focntions avancées de mysql désolé
Pour les procedures stockées je maitrise pas celle de mysql
|
|
mercredi 14 décembre 2005 à 10:32:14 |
Re : Calculer des différences sous certaines conditions

aieeeuuuuu
|
salut,
une solution un peu tordue mais qui pourrait bien marcher si elle est bien realisee, consisterait a creer une table temporaire contenant en plus des deux champs de ta table d'origine, un champ ID autoincrementé.
ensuite tu insere tes données classées par ordre de date dans ta table.
puis pour inserer dans ta table finale, tu fais la soustraction entre tes valeurs de la table temporaire ID n et de la table temporaire ID n-1.
une requete du genre
INSERT INTO MaTableFinale SELECT
|
|
mercredi 14 décembre 2005 à 10:34:47 |
Re : Calculer des différences sous certaines conditions

aieeeuuuuu
|
mouarfff ?!?
elle est passée ou la fin de mon post ???
bon je disais donc pour la requete :
INSERT INTO maTableFinale
SELECT T1.date, (T1.valeur - T2.valeur)
FROM tableTemporaire T1, tableTemporaire T2
WHERE T1.ID = T2.ID + 1
et ca ca devrait fonctionner.
|
|
jeudi 15 décembre 2005 à 00:58:09 |
Re : Calculer des différences sous certaines conditions

JoeyBlack
|
Merci, logiquement ca devrait marcher. (le temps que je trouve les commandes pour creer une table temporaire etc...)
Une dernière chose, bcp plus simple...
Si je veux créer une nouvelle table (date, valeur2) contenant les
valeurs de ma table (date,valeur) mais telle que valeur2 = valeur -
moyenne(valeur), la moyenne étant celle de toute la table...
Il y a un moyen de déclarer des variables temporaires dans une requete ?
Merci pour vos réponses en tous cas, ca m'aide beaucoup :)
|
|
jeudi 15 décembre 2005 à 08:51:33 |
Re : Calculer des différences sous certaines conditions

nhervagault
|
Salut
AVG --> moyenne je crois sinon (sum(*)/count(*)) as valeur2 Group by cléprimaire de la table
bon courage
|
|
jeudi 15 décembre 2005 à 09:57:28 |
Re : Calculer des différences sous certaines conditions

aieeeuuuuu
|
oui, c'est ca, pas besoin de varable temporaire dan sta requete :
tu fais juste
INSERT INTO NouvelleTable
SELECT date, valeur - (SELECT AVG(valeur) FROM MaTable) FROM MaTable
|
|
jeudi 15 décembre 2005 à 09:59:13 |
Re : Calculer des différences sous certaines conditions

aieeeuuuuu
|
quoique directement
INSERT INTO maNouvelleTable SELECT date, valeur - AVG(valeur) FROM MaTable
va peut etre fonctionner, mais je ne suis pas sur. ?!?
|
|
Cette discussion est classée dans : date, valeur, calculer, conditions, différences
Répondre à ce message
Sujets en rapport avec ce message
Connaitre la valeur dans un INSERT [ par PunkDude424 ]
Salut, je développe une application de gestion de rendez vous avec VB et SQL Server....j'ai une table rendezvous qui contient les informtions du rende
calculer l'age d'une personne [ par slante ]
HelloJ'ai creer une table en Oracle XE pour un arbre genealogique, j'ai besoin d'une query qui retourne l'age des personnes :vivantes, base sur la dat
SELECT [ par tjarvl ]
Salut j'ai une table ou je doit afficher la somme ,le maximum et la valeur correspondante au max d'une colonne; Je ne sais pas comment afficher la va
Ordonner selon une valeur [ par Isengard ]
Bonjour ! J'ai un petit problème assez énervant ! Je fais un système de réféncement d'évenement avec génération d'une frise chronologique qui fait ap
Sélectionner 2 fois le meme champ mais avec 2 conditions différentes [ par cispo ]
Bonjour, Comme je l'ai mis dans le titre, je cherche à effectuer une requete qui sélectionne 2 fois le meme champs mais avec 2 conditions différentes
Problème avec une requête [ par emmanuel9 ]
Bonjour à tous, J'ai une table Personne avec dans cette table une colonne "date de création" et ma requete ressemble à ca : "SELECT * FROM PERSONNE WH
Ajouter un an à une date (renouvelable chaque année) sous access [ par totolaterreur ]
Salut J'ai des requêtes SQL à faire sous access et dans les requêtes, je dois comparer des dates à une seule. Par exemple, je dois comparer 07/06/2006
XML et Requete [ par blueangel ]
blueangel12@yahoo.com 13/02/2006<b
DateTime SQL problem [ par toubal_99 ]
salutg un problem avec une requette SQL suivanteSoins.SQL.Clear;Soins.SQL.Add('SELECT * from Soins where Soins.Date_Heure= :Date_Heu
Vérifier la valeur du champs [ par Goldeneye007 ]
Salut,Je voudrai vérifier la valeur d'un champ session ("uid") que j'ai fais apparaitre dans mon formulaire asp.net par le biais d'une zone texte comm
Livres en rapport
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
PROCEDURE MYSQLPROCEDURE MYSQL par gearmat
Cliquez pour lire la suite par gearmat
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|