Accueil > Forum > > > > Calcul de la différence de temps entre deux tuples
Calcul de la différence de temps entre deux tuples
vendredi 8 juin 2007 à 11:36:16 |
Calcul de la différence de temps entre deux tuples

lofo18
|
Bonjour tout le monde! Dans le cadre d'un projet pour le domaine médical, Je dois calculer le temps moyen entre deux interventions, mais je bloque complétement, je n'arrive pas à faire la différence seulement entre deux tuples qui ce suivent sans la faire sur tous les autres... voici un exemple d'une table dans laquelle je doit effectuer ce calcul: HEURE_DEBUT HEURE_FIN
22/01/1997 10:51:24 22/01/1997 11:35:46 28/06/2000 10:02:23 28/06/2000 10:45:18 24/04/2007 13:31:07 24/04/2007 13:33:26 25/04/2007 11:53:25 25/04/2007 11:55:58 25/04/2007 13:01:32 25/04/2007 13:03:20 26/04/2007 09:45:26 26/04/2007 09:54:45 26/04/2007 10:28:11 26/04/2007 10:32:58 02/05/2007 11:18:43 02/05/2007 11:18:54 02/05/2007 13:09:34 02/05/2007 13:09:50 02/05/2007 13:10:24 02/05/2007 13:10:55 02/05/2007 13:14:41 02/05/2007 13:15:06 14/05/2007 15:51:28 14/05/2007 16:00:10j'ai beaucoup cherché sur internet, mais je n'ai trouvé personne confronté au meme probleme que moi. si quelqu'un à une idée pour m'aiguiller je lui en serai infiniment reconnaissant  Par avance, merci.
|
|
dimanche 10 juin 2007 à 22:42:41 |
Re : Calcul de la différence de temps entre deux tuples

nhervagault
|
Salut
Je ne comprends pas la phrase
différence seulement entre deux tuples qui ce suivent
Regardes la focntion datediff pour résoudre ton probleme de difference
|
|
lundi 11 juin 2007 à 16:50:50 |
Re : Calcul de la différence de temps entre deux tuples

lofo18
|
Salut nhervagault merci d'avoir pris un peu de temp pour mon problème. et merci pour la fonction datediff que je ne connaissait pas, mais ça ne regle pas complétement mon problème  . C'est vrai que je n'ai pas été très clair dans mon explication, je vais essayé d'étre plus précis ID INTERV HEURE_DEBUT(HD) HEURE_FIN (HF) 1 22/01/1997 10:51:24 22/01/1997 11:35:46 2 28/06/2000 10:02:23 28/06/2000 10:45:18 3 24/04/2007 13:31:07 24/04/2007 13:33:26 4 25/04/2007 11:53:25 25/04/2007 11:55:58 5 25/04/2007 13:01:32 25/04/2007 13:03:20
(c'est le meme exemple que décrit plus haut, mais avec un identifiant, ce sera plus facile) Ce que je voudrai réaliser c'est une moyenne du temps qui sépare deux interventions soit: HeureDebut de l'interv 2 moins HeureFin de l'interv 1 HeureDebut de l'interv 3 moins HeureFin de l'interv 2 HeureDebut de l'interv 4 moins HeureFin de l'interv 3 etc.... pour réaliser la moyenne de ce calcul. Avec cette requete: select DISTINCT (H1.HEURE_DEBUT) , H1.HEURE_FIN ,H2.HEURE_DEBUT, H2.HEURE_FIN, cdate(H2.HEURE_DEBUT - H1.HEURE_FIN) as "Temp" From INTERVENTION as H1 INNER JOIN INTERVENTION as H2 on (H1.HEURE_DEBUT <> H2.HEURE_DEBUT)
j'ai obtenu la différence entres tous les tuples: HD interv2 - HF interv1 HD interv2 - HF interv3 HD interv2 - HF interv4 etc.... alors que je voudrai juste faire la difference entre le tuple (2 et 1), (3 et 2) etc... (d'où ma phrase "je n'arrive pas à faire la différence seulement entre
deux tuples qui ce suivent sans la faire sur tous les autres...") j'espère avoir été un peu plus clair. encor merci à ceux qui consacreront un peu de temps à ce problème.
|
|
lundi 11 juin 2007 à 19:44:23 |
Re : Calcul de la différence de temps entre deux tuples

nhervagault
|
Réponse acceptée !
Si tu joue avec ta clé primaire ca doit le faire?
WHERE H1.IDINTERV = H2.IDINTERV +1
En esperant qu'il se suive?
|
|
lundi 11 juin 2007 à 20:41:42 |
Re : Calcul de la différence de temps entre deux tuples

lofo18
|
En théorie la solution que tu ma donné marche très bien, et je n'avai pas dutout pensé à ce genre de solution malheureusement, je me suis aperçu que certaine intervention peuvent être effacée, et de ce fait, leur clé primaire aussi... donc impossible de savoir si H1.IDINTERV = H2.IDINTERV +1 mais merci quand meme, ça fait deux chose que tu m'apprend ^^ (je début un peu en sql comme tu as du le remarquer) je vais continuer à chercher, et si je trouve une solution, je la posterai ici. ça pourra peut etre aider quelqu'un (si je trouve....)
|
|
lundi 11 juin 2007 à 22:13:14 |
Re : Calcul de la différence de temps entre deux tuples

nhervagault
|
Réponse acceptée !
Salut
Tu peux rajouter le numero de ligne a des deux tables.
Attention c'est vraiement de la bidouille et ca doit bouffé en performance de manière importante.
a moins de creer une colonne.
Qui te numerote les lignes avant la requete,
while pas fin des enregsitrement
macolonnerownumber = i + 1
Pour la table et la tu n'as plus de trou car elles sera mis en permanence en route avant ton calcul.
NB si nbenregistrement = max(macolonnerownumber) [- 1] dependant si tu es base en base 0 ou 1 pour ton indexage de ta colonne de numero de ligne.
pas la peine de refaire l'update.
Bon courage.
Extrait d'un post google group
Si tu as une cle primaire
SELECT (SELECT Count(theField) + 1 FROM tblSource AS A WHERE A.TableID
< B.TableID) As RowNumber, TableID, theField
FROM tblSource AS B;
Sinon
Public Function LineNum(lngFldVal As Long, strSource As String, strKey
As String) As Long
Dim strCrit As String
strCrit = "[" & strKey & "] < " & CStr(lngFldVal)
LineNum = Nz(DCount(strKey, strSource, strCrit)) + 1
End Function
Then it can be called like:
SELECT LineNum([TableID],"tblSource","TableID") AS RowNumber, TableID,
theField FROM tblSource;
SELECT LineNum([QID], "qryNew", "QID") As RowNumber, * FROM qryNew;
Note: One way to get a unique QID is to use the key from a source
table (qryNew: SELECT tblSource.TableID AS QID...). I also tried an
old query I had lying around as qryNew :-):
qryNew:
SELECT qryOrdinalIPs.IP AS IP1, qryOrdinalIPs.ID
FROM tblIPs INNER JOIN qryOrdinalIPs ON tblIPs.ID = qryOrdinalIPs.ID
WHERE (((qryOrdinalIPs.theOrdinal)=1))
GROUP BY qryOrdinalIPs.IP, qryOrdinalIPs.ID;
SELECT LineNum([ID], "qryNew", "ID") As RowNumber, * FROM qryNew;
|
|
lundi 18 juin 2007 à 12:17:06 |
Re : Calcul de la différence de temps entre deux tuples

lofo18
|
Salut et désolé d'avoir mis autant de temps pour répondre. Mais un GRAND merci à toi, pour le temps que tu as consacré à mon probleme, et surtout à la solution que tu m'as donnée. avec SELECT (SELECT Count(theField) + 1 FROM tblSource AS A WHERE A.TableID< B.TableID) As RowNumber, TableID, theField FROM tblSource AS B;j'ai pu numéroter tous mes tuples avec des numéros qui se suivent , et avec WHERE H1.IDINTERV = H2.IDINTERV +1 j'ai pu réaliser la différence de temps entre deux patients.  encor merci!!!! 
|
|
mardi 19 juin 2007 à 10:07:16 |
Re : Calcul de la différence de temps entre deux tuples

lofo18
|
Si ça interesse quelqu'un, voila la requête que j'ai obtenu, j'espere que ça pourra être utils pour quelqu'un bien que ce soit assé spécifique.
Select cdate(R2.HEURE_DEBUT - R1.HEURE_FIN) as 'Temp Entre deux Intervention' from ( Select ( SELECT Count (HEURE_DEBUT)+ 1 FROM ( SELECT distinct(HEURE_DEBUT), HEURE_FIN FROM INTERVENTION WHERE HEURE_DEBUT IS NOT NULL AND HEURE_FIN IS NOT NULL) AS H1 WHERE H1.HEURE_DEBUT < H2.HEURE_DEBUT ) As IDTMP,H2.HEURE_DEBUT, H2.HEURE_FIN FROM( SELECT distinct(HEURE_DEBUT), HEURE_FIN FROM INTERVENTION WHERE HEURE_DEBUT IS NOT NULL AND HEURE_FIN IS NOT NULL) AS H2 WHERE H2.HEURE_DEBUT IS NOT NULL AND H2.HEURE_FIN IS NOT NULL) as R1, ( Select ( SELECT Count (HEURE_DEBUT)+ 1 FROM ( SELECT distinct(HEURE_DEBUT), HEURE_FIN FROM INTERVENTION WHERE HEURE_DEBUT IS NOT NULL AND HEURE_FIN IS NOT NULL) AS H1 WHERE H1.HEURE_DEBUT < H2.HEURE_DEBUT ) As IDTMP,H2.HEURE_DEBUT, H2.HEURE_FIN FROM( SELECT distinct(HEURE_DEBUT), HEURE_FIN FROM INTERVENTION WHERE HEURE_DEBUT IS NOT NULL AND HEURE_FIN IS NOT NULL) AS H2 WHERE H2.HEURE_DEBUT IS NOT NULL AND H2.HEURE_FIN IS NOT NULL) AS R2
WHERE R1.IDTMP+1 = R2.IDTMP
Bon Courage à tous!!
|
|
Cette discussion est classée dans : temps, différence, heure, calcul, tuples
Répondre à ce message
Sujets en rapport avec ce message
Temps de réponse sur Reporting Services avec cube OLAP [ par cyr10 ]
Bonjour,Je développe des états sous Reporting Services qui sont basés sur un cube OLAP (Analysis Services) que j'attaque donc avec une requete en MDX.
Temps d'accès OLAP monstrueux [ par Nephilim ]
Salut à tous, J'ai un petit souci depuis une semaine sur un site ASP.NET. Je ne peux être que vague sur le problème étant donné qu'il n'est pas identi
Insertion Date / Heure [ par LordBob ]
Bonsoir a tous,voila en fait je développe un programme pour lequel je dois effectuer des insertions dans des tables d'une base de donéee. Je n'ai qu'u
Calcul de date [ par keks_06 ]
Est-t-il possible que je supprime une date qui se trouve depuis 30 jours ou plus dans ma base de données en réalisant une requête SQL??
[SP][SQL Serveur]Comment utiliser un parametre en output dans différentes procédures stockées [ par Arthenius ]
Salut a tousVoila je "tente" d'utiliser deux SP en passant des parametres entre elles avec certains en OUTPUT...Par exemple dans une de mes SP je fais
probleme actualisation sql [ par Gipsy974 ]
bonjour a tous, mon probleme concerne l actualisation de pages html dans cette actualisation, je fais appel a mysql pour recuprere les temps d afichag
[MsSQL 2000]Conversion heure GMT [ par ProphetKy ]
Bonjour, j'ai un peit soucis avec la mise en production de mon application. J'effectue dans pas mal de requêtes des GetDate(), mais le serveur SQL
Temps de connexion à la BD: trop long!!! [ par la_vigiere ]
Salut à tous, J'ai fait un programme JAVA qui attend des données sur un port bien particulier. Quand il reçoit des données il se connecte à une base
Calcul dans une table acces [ par PAVIQ ]
Bonjour, Je débute en Access et je souhaite faire des calcul entre plusieurs champs d'une table et inscrire le résultats dans un autre champ. J'ais
Gérer une insertion d'heure par demi-heure [ par VivoBaggio ]
Salut. Est-ce que c'est possible de gérer l'insertion d'un cours par demi-heure sur la BDD. Par exemple, selon le code suivant :INSERT INTO COURS (Cod
Livres en rapport
|
Derniers Blogs
[MIX10] RELEASE CANDIDATE DE SILVERLIGHT 4 ET RIA SERVICES[MIX10] RELEASE CANDIDATE DE SILVERLIGHT 4 ET RIA SERVICES par Audrey
C'est enfin officiel, grâce au MIX 2010, les Release Candidate de Silverlight 4 et de RIA Services sont sorties ! Pour les télécharger, voici les liens : Silverlight 4 RC : http://silverlight.net/getstarted/silverlight-4/ RIA Services RC : http://www.micr...
Cliquez pour lire la suite de l'article par Audrey [WINDOWSPHONE7] LECTEUR DE FLUX RSS[WINDOWSPHONE7] LECTEUR DE FLUX RSS par Vko
Parce que j'aime pas tester à moitié, je me suis amusé à développer un petit lecteur de flux RSS avec un look qui vous rappellera surement quelque chose :) La RC de Visual Studio est plutôt molle mais fonctionne correctement. L'émulateur est pas...
Cliquez pour lire la suite de l'article par Vko [WP7] L'éMULATEUR WINDOWS PHONE 7 EST MULTITâCHE[WP7] L'éMULATEUR WINDOWS PHONE 7 EST MULTITâCHE par KooKiz
Une question qui reste en suspend concernant Windows Phone 7 est de savoir si le système permettra à plusieurs applications de s'exécuter simultanément, ou si un système de mise en pause similaire à celui de l'iPhone sera adopté. Même si cela ne perm...
Cliquez pour lire la suite de l'article par KooKiz PRéSENTATION CLUB MOSS CE JOUR "LA NOUVELLE ARCHITECTURE DE SERVICES SHAREPOINT 2010".PRéSENTATION CLUB MOSS CE JOUR "LA NOUVELLE ARCHITECTURE DE SERVICES SHAREPOINT 2010". par Patrick Guimonet
Ca y est la sortie RTM de SharePoint 2010 est annoncée pour le 16 avril 2010 (annonce faite ce jour par Erol Giraudy lors de la réunion du club MOSS). Vous pourrez trouver ici les slides de ma présentation du jour dans le cadre du club MOSS : 201...
Cliquez pour lire la suite de l'article par Patrick Guimonet [WINDOWPHONE7] PREMIERS PAS[WINDOWPHONE7] PREMIERS PAS par Vko
Hop voici les premiers pas avec les outils de développement pour Windows Phone 7. Premier changement suite à l'installation des outils : les type de projets pour la plateforme Windows Phone 7. Les projets se découpent en deux groupes : Les projet...
Cliquez pour lire la suite de l'article par Vko
Forum
MCDMCD par debinfo
Cliquez pour lire la suite par debinfo
Logiciels
Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods Konvertor (4.00)KONVERTOR (4.00)Le logiciel est un gestionnaire multimedia affichant, jouant et convertissant plus de 2000 format... Cliquez pour télécharger Konvertor
|