Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1726 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  calculer une valeur entre deux dates

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

calculer une valeur entre deux dates

n°1431935
lebienestr​are
Posté le 26-08-2006 à 20:52:34  profilanswer
 

Bonjour tout le monde, quelqu'un peut me dire comment est ce qu'on peut calculer une valeur entre deux dates quelconques,par exemple: je veux calculer le nombre de clients entre deux dates, ces deux dates sont modifiables,alors pour chaque fois que je veux calculer le nbr,je choisis deux dates diff, je veux dire que la requete ne contient pas 2 dates fixes,mais chaque fois que j'exécute l'appli,je saisis 2 dates,et voilà,j'obtient le nombre des clients,
Merci d'avance
j'espère entendre vos réponses

mood
Publicité
Posté le 26-08-2006 à 20:52:34  profilanswer
 

n°1431946
el muchach​o
Comfortably Numb
Posté le 26-08-2006 à 21:36:04  profilanswer
 

Il faut enregistrer le nombre de clients à intervalles réguliers, ensuite, tu fais la somme de ces enregistrements entre les deux dates.


---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
n°1431954
moi23372
Posté le 26-08-2006 à 22:09:02  profilanswer
 

pour chaque client, il faut avoir la date d'arrivée et la date départ.  
ensuite la requête est toute conne
 
SELECT count(*)
FROM table_client t1, table_periodes t2
WHERE t1.idClient = t2.idClient
AND (t2.DateDebut BETWEEN taDate1 AND taDate2
OR t2.DateFin BETWEEN taDate1 AND taDate2  
OR (t2.DateDebut BETWEEN taDate1 AND taDate2  
AND t2.DateFin BETWEEN taDate1 AND taDate2))
 
un truc ainsi, faudra peut etre rajouter des OR pour les périodes à voir quoi selon ce que tu as besoin
taDate1 représente la date de début que tu encodes, et taDate2 représente la date 2 que tu encodes.
La requête te renverra le nombre de client qui était la entre la date1 et la date2

n°1431957
lebienestr​are
Posté le 26-08-2006 à 22:24:17  profilanswer
 

je connais ce genre de requête bien sûr,mais c'est pas ça ce que je voulais savoir,plutôt,par exemple dans l'exemple que t'as cité moi23372,on trouve tadate1 et tadate2,ces deux dates sont à saisir dans la requête,mais ce que je veux est à travers l'appli vb6,j'introduis des dates qui ne seront pas toujours fixes,les changer chaque fois je veux calculer le nombre des clients,c'est comme si on fait dans la requête des expressions de date qui seront remplacées par les vrais valeurs que je saisis dans l'appli!!!!!!!!!!!!!!

n°1432054
moi23372
Posté le 27-08-2006 à 11:04:39  profilanswer
 

dans ton code VB, il suffit de construire la requête dynamiquement pour arriver à ce résultat.  
 
tu concatène les éléments de la requête
en C# ça donne ça :
 
string sql = "SELECT count(*) "
+"FROM table_client t1, table_periodes t2 "
+"WHERE t1.idClient = t2.idClient "
+"AND (t2.DateDebut BETWEEN "+MONCHAMPDATE.VALUE+" AND "+MONCHAMPDATE2.VALUE+""
+"OR t2.DateFin BETWEEN "+MONCHAMPDATE.VALUE+"AND "+MONCHAMPDATE.VALUE2+""
+"OR (t2.DateDebut BETWEEN "+MONCHAMPDATE.VALUE+"AND "+MONCHAMPDATE2.VALUE+""
+"AND t2.DateFin BETWEEN "+MONCHAMPDATE.VALUE+"AND "+MONCHAMPDATE2.VALUE+" )) ";
 
attention que la synthaxe sur les date est différente d'un SGBD à un autre.  
Je fais allusion ici à:
ORACLE: TO_DATE(...), TO_CHAR(...)
SQL SERVER: CAST(...), CONVERT(...)
ACCESS: FORMAT(...)
etc.
 
EDIT: ça c'est la méthode à la dur. Il est possible de faire dans presque tous les languages des requêtes paramétrées avec des "?" en JDBC JAVA par exemple. ça doit être possible en VB également ;)


Message édité par moi23372 le 27-08-2006 à 11:06:20

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  calculer une valeur entre deux dates

 

Sujets relatifs
Valeur max d'un int(11)Recherche d'une valeur dans un vector<> trop longue
Attribution valeur par defaut d'un champ text formulaireProblème tri de dates par année puis mois
[VBA-E] [Résolu] Copier une valeur provenant d'un autre classeur[Access] Affecter une valeur lors du premier focus sur une case
ajout de valeur[PHP]Remplacer une constante par sa valeur dans une chaîne ""
[SQL] Prendre les enregistrements valeur max par catégorie (GROUP BY)Recuperer la valeur dans une liste déroulante
Plus de sujets relatifs à : calculer une valeur entre deux dates


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR