Précédent   Forum des professionnels en informatique > Bases de données > Oracle
Oracle Forum Oracle : le serveur, les outils, ... Voir F.A.Q Oracle Tutoriels Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/02/2007, 15h16   #1
Invité de passage
 
Inscription : mai 2004
Messages : 21
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 21
Points : 2
Points : 2
Par défaut extraire une date format 'mois/année' de deux colonnes format 'jour/mois/année'

bonjour
je possede une table qui contient deux colonnes date_debut et date_fin format 'DD/MM/YY' et j'aimerais extraire toute les lignes en passant un parametre sous format 'MM/YYYY' par exemple extraire les ligne ou le mois et l'année sont entre la le mois/année de la date_debut et le mois/année de la date_fin
merci
orcl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 15h25   #2
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 450
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 450
Points : 4 209
Points : 4 209
date_debut et date_fin format 'DD/MM/YY'
Il te suffit de les transformer en DATE après avoir supprimé les 3 premiers caractères.
Pour le paramètre, juste le transformer en date
Ensuite tu fais la comparaison.
Regarde le tutoriel sur les fonctions de formatage de date
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 15h29   #3
Rédacteur/Modérateur
 
Avatar de orafrance
 
Inscription : janvier 2004
Messages : 15 861
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2004
Messages : 15 861
Points : 16 212
Points : 16 212
ou alors

Code :
BETWEEN to_date('01' ||to_char(date_debut,'MM/YYYY')) AND to_date(01 ||to_char(add_months(date_fin,1),'MM/YYYY')) -1
orafrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 15h34   #4
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 450
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 450
Points : 4 209
Points : 4 209
Date_debut et date_fin sont de quel type : VARCHAR2 ou DATE ?
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 16h06   #5
Invité de passage
 
Inscription : mai 2004
Messages : 21
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 21
Points : 2
Points : 2
Citation:
Envoyé par McM
Date_debut et date_fin sont de quel type : VARCHAR2 ou DATE ?
il sont de type date
orcl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 17h52   #6
Membre émérite
 
Avatar de Yorglaa
 
Inscription : janvier 2004
Messages : 845
Détails du profil
Informations personnelles :
Âge : 41
Localisation : Suisse

Informations forums :
Inscription : janvier 2004
Messages : 845
Points : 939
Points : 939
et tu es obligé de passer le paramètre dans ce format (MM/YYYY) ?

sinon tu peux arrondir TOUTES les dates de références au 1er du mois avec la fonction Trunc(maDate, 'MM')
Code :
SELECT * FROM maTable WHERE trunc(Date_Debut, 'MM') = to_date(le 1er du mois à chercher)
en faisant quelquechoses comme ça, tu peux même mettre n'importe quelle date en paramètre, il suffit de faire la même choses avec le paramètre donné (en format date cette fois) pour avoir une solution souple...
Code :
SELECT * FROM maTable WHERE trunc(Date_Debut, 'MM') = trunc(paramètre, 'MM')
__________________
Il est plus facile de voir les signes avant-coureurs après coup que l'inverse !

Yorglaa
Yorglaa est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h34.


 
 
 
 
Partenaires

Hébergement Web