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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Access / Sql] Comment mettre un critere sur les 3 dernieres semaines

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Access / Sql] Comment mettre un critere sur les 3 dernieres semaines

n°730152
lebowski
Posté le 18-05-2004 à 13:01:29  profilanswer
 

Bonjour,
 
Je m'explique : Je souhaite effectuer une requete SQL, avec les parametres suivant :
Selectionner les lignes des trois dernieres semaines (la premiere colonne de ma bd contient bien evidemment les dates au format mm/dd/yyyy) a compter d'aujourdhui.
 
Est-ce possible avec juste le langage SQL, et si oui, quelqu'un peut-il me venir en aide sur ce point ?
 
Merci d'avance.
 
Lebowski

mood
Publicité
Posté le 18-05-2004 à 13:01:29  profilanswer
 

n°730235
strawfield
Pourquoi k'ca marche pas???
Posté le 18-05-2004 à 13:37:29  profilanswer
 

Tu vas finir par me pomper tout mon code!!!! Je vais pas tarder à le mettre en licence GPL!!!!
 

Code :
  1. SELECT DISTINCT
  2. ...
  3. FROM XX
  4. WHERE ([XX].[Date début])<DLookup("[Date fin]","[Période glissante]" ) And ([XX].[Date début])>DLookup("[Date début]","[Période glissante]" );


 
"Période glissante" est une table à un enregistrement qui contient les champs Date fin et Date début.
 

Code :
  1. UPDATE [Période glissante]
  2. ET [Date fin] = [Date de fin: (jj/mm/aaaa)], [Date début] = DateAdd("d",-JJ,[Date de fin: (jj/mm/aaaa)]);


 
Celle là met à jour "Période glissante": elle te demande "Date de fin: (jj/mm/aaaa)" et "calcule date début" (JJ jours avant la date de fin)
 
Tu dois pouvoir adapter ca.....
 
Tu fais quoi exactement??? Si ce n'est la même chose que moi avec quelques semaines de retard??? :lol:


Message édité par strawfield le 18-05-2004 à 13:38:45

---------------
Ils ne savaient pas que c'était impossible, alors ils l'ont fait.   Mark Twain
n°730415
Beegee
Posté le 18-05-2004 à 15:46:14  profilanswer
 

le plus simple est d'ajouter 3*7 = 21 jours a la date, et de comparer a la date du jour ...
 
exemple :
 
select * from matable
where monchampdate + 21 > datesysteme;
 
en tout cas ca marche en Oracle :D

n°730452
lebowski
Posté le 18-05-2004 à 16:09:43  profilanswer
 

Merci beaucoup, je vais voir ca (pour l'instant je planche sur un probleme de BOF EOF, voir un autre post).
Je pense en fait que je vais plutot pouvoir utiliser les recordset de Visual Basic, afin d'aller chercher la date plus facilement (du style : ...WHERE (((DAILY.DATE)=" & -un truc en Visual qui va chercher la date actuelle - & )).
Sinon, je reviendrai a ta methode (desole j'ai pas encore teste).
Beegee, le probleme est (bien evidemment) que je ne travaille pas sous Oracle ;) Ca a l'air bien plus facile pourtant...
 
Sinon Strawfield, pour repondre a ta question, je fais actuellement un stage ingenieur "informaticien" (enfin pas du gros brutal non plus) en Roumanie. Mon theme me demande de travailler avec des bases Access (disons meme dBase) et le langage le plus approprie me semblait le VB... que je ne connaissais pas, evidemment :)
 
Viendez en Roumanie d'ailleurs, ca defonce (sauf le clavier qwerty) !

n°730472
Beegee
Posté le 18-05-2004 à 16:23:06  profilanswer
 

mince, j'avais bien lu le premier post pour voir sous quel type de base tu travaillais, mais j'ai pas regarde le tire attentivement :D
 
enfin faut creuser un peu dans les fonctions de dates et tu devrais trouver un equivalent.

n°730497
strawfield
Pourquoi k'ca marche pas???
Posté le 18-05-2004 à 16:40:40  profilanswer
 

beegee a écrit :

select * from matable
where monchampdate + 21 > datesysteme;
 
en tout cas ca marche en Oracle :D


 
Ca tourne aussi en SQL Jet...mais j'ai pas la synthaxe exacte en tête.
 
J'ai filé mon code brut de décoffrage...à toi de voir ce que tu peut récupèrer.
 
J'ai créé la table "période glissante" pour savoir quel a été la dernière date utilisée car c'est l'opérateur qui choisit la date d'enregistrement...Et des fois y a du n'importe quoi de fait!!!!


---------------
Ils ne savaient pas que c'était impossible, alors ils l'ont fait.   Mark Twain
n°730523
lebowski
Posté le 18-05-2004 à 16:57:31  profilanswer
 

Bon, je vais me rentrer, car la journee a ete longue.
A demain, vu que je vais surement plancher dessus.


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

  [Access / Sql] Comment mettre un critere sur les 3 dernieres semaines

 

Sujets relatifs
Sql*LoaderCrystal Report 7 vs SQL server 2000
[php] arrive pas a afficher le contenu d'une table SQL [nb inside][RESOLU] [SQL] Limiter le nombre de requetes imbriquées
access: aucun chiffre ne s'affichent dans mes états[Access / VB] Un petit coup de pouce pour un debutant (bis)
lancer un script SQL[Access / VB] Un p'tit coup de pouce pour debuter
postscript / ps : mettre des majuscules en minuscules[Access] Recuperer tous les champs de la semaine derniere
Plus de sujets relatifs à : [Access / Sql] Comment mettre un critere sur les 3 dernieres semaines


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