Requète
lerit
Messages postés
9
Statut
Membre
-
Christounet Messages postés 1272 Date d'inscription Statut Membre Dernière intervention -
Christounet Messages postés 1272 Date d'inscription Statut Membre Dernière intervention -
Bonjour, à tous
dans un fichier Excel, j'aimerai renvoyé toutes les données supérieures ou égales à 2 mois.
Actuellement j'ai une requète, qui fait ceci:
WHERE (RELEVE_GRANULATION.QUAND>={ts '2008-07-01 03:56:46'})
Que dois je changer pour ce soit bien mes données supérieures à 2 mois
Merci à l'avance des réponses que vous allez me faire.
dans un fichier Excel, j'aimerai renvoyé toutes les données supérieures ou égales à 2 mois.
Actuellement j'ai une requète, qui fait ceci:
WHERE (RELEVE_GRANULATION.QUAND>={ts '2008-07-01 03:56:46'})
Que dois je changer pour ce soit bien mes données supérieures à 2 mois
Merci à l'avance des réponses que vous allez me faire.
Configuration: Windows XP Internet Explorer 6.0
9 réponses
-
Bonjour,
Quelle base de données utilises-tu, car en fonction de celle-ci il existe plusieurs possibilités.
A plus -
Bonjour,
Les données viennent d'une base Oracle que je transfère dans un fichier Excel.
J'espère que cela va te suffire.
Merci -
Bonjour,
En supposant que la variable RELEVE_GRANULATION.QUAND est une date, le code suivant devrait faire ce que tu veuxWHERE (MONTHS_BETWEEN(to_date('2008/07/01','YYYYMMDD'),RELEVE_GRANULATION.QUAND) >= 2)
La fonction MONTHS_BETWEEN calcule le nombre de mois entre la première date et la seconde. La première date doit être la plus grande si tu veux avoir un nombre de mois positifs, exemple si RELEVE_GRANULATION.QUAND est égal à la date 2008/04/01, alors MONTHS_BETWEEN(to_date('2008/07/01',RELELVE_GRANULATION.QUAND) donnera comme résultat 3
A plus -
Bonjour,
Merci pour la réponse.
Seulement, dans ce cas ce ne sont pas les valeurs, en l'occurence les dates, qui vont apparaitrent, mais seulement un chiffre.
Ce que j'aimerai, c'est de ne voir apparaitre les données des deux derniers mois à partir d'aujourd'hui.
Est ce possible. Merci pour ta patience et ta compréhension.
A bientôt -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Bonjour,
Peux-tu copier/coller l'ordre SQL complet et je pourrai alors répondre à ta question, je pense que cela ne devrait pas être un problème d'avoir ce que tu veux.
A plus-
Bonjour,
Voici l'ordre SQL
SELECT
RELEVE_GRANULATION.QUAND,
RELEVE_GRANULATION.xx_xx,
RELEVE_GRANULATION.xx_xx,
RELEVE_GRANULATION.xx_xx,
RELEVE_GRANULATION.xx_xx,
RELEVE_GRANULATION.xx_xx,
RELEVE_GRANULATION.xx_xx,
RELEVE_GRANULATION.xx_xx,
RELEVE_GRANULATION.xx_xx,
RELEVE_GRANULATION.xx_xx,
RELEVE_GRANULATION.xx_xx,
RELEVE_GRANULATION.xx_xx
FROM
xx_xx.RELEVE_GRANULATION RELEVE_GRANULATION
WHERE
(RELEVE_GRANULATION.QUAND>={ts '2008-07-01 03:56:46'})
ORDER BY
RELEVE_GRANULATION.QUAND
Si cela te parle mieux alors voila. Et encore merci pour le coup de main
-
-
Bonjour,
Je vais essayer de formuler ma demande d'une façon plus compréhensible.
Aujourd'hui nous sommes le 12/09/2008.
Je voudrais faire apparaitre les données comprises entre le 12/07/2008 et 12/09/2008. Et demain nous serons le 13, ce sera donce entre le 13/07 et le 13/09, ainsi de suite.
Est-ce possible, si oui quel est la commande à écrire.
Merci -
Bonjour,
La réponse est OUI et Christounet t'a donné la réponse ...
;o) -
Bonjour,
Ok, j'ai le droit à un message d'erreur, lorsque j'écris cette commande. Car le format date ne correspond pas.
moi j'ai le format date plus heure 12/07/2008 03:56:43.
Merci -
Bonjour,
Si tu utilises le code suivant, tu ne devrais plus avoir de fautesSELECT ........ WHERE (MONTHS_BETWEEN(to_date('2008/07/01','YYYYMMDD'), to_date(to_char(RELEVE_GRANULATION.QUAND,'YYYYMMDD'),'YYYYMMDD') >= 2)
A plus