dbTalk Databases Forums  

Probl. criteres extraction

comp.databases.oracle.misc comp.databases.oracle.misc


Discuss Probl. criteres extraction in the comp.databases.oracle.misc forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Kevin
 
Posts: n/a

Default Probl. criteres extraction - 02-21-2005 , 09:40 PM






Je dois extraire de ma base, toutes les donnees des abonnes en fonction de
ce qui est dans mon "select".
Par contre, il ne faut pas que j'ai ceux dont l'adresse n'est pas bonne
(retour des courriers par la Poste avec mention NPAI) :
Pour eux, 3 criteres sont donnes :
"M" pour ceux dont l'adresse est definitivement bloquee et a qui on envoie
plus rien
"1" pour ceux dont on a recu tres peu de courrier NPAI
"2" pour ceux dont les retours NPAI sont plus importants mais pas bloques

J'ai reussi a ecrire la requete suivante mais mes criteres de selection sur
"M", "1" et "2" ne marchent pas et je vois plus trop comment faire... Je
debute en SQL (j'ai repris la requete d'une deja faite). Si qqu'un peu me
corriger ma requete, ca serait cool et si on m'explique le principe en meme
temps, ce serait en mieux ;-)

D'avance, merci a tous !

SELECT DISTINCT
c.LIBELLE_CIVILITE,
p.NOM_ADHERENT nom,
nls_initcap(p.PRENOM_ADHERENT) prenom,
nvl(a.LIGNE_ADRESSE_1,' ') ligne_adresse_1,
nvl(a.LIGNE_ADRESSE_2,' ') ligne_adresse_2,
nvl(a.LIGNE_ADRESSE_3,' ') ligne_adresse_3,
nvl(a.LIGNE_ADRESSE_4,' ') ligne_adresse_4,
nvl(a.LIGNE_ADRESSE_5,' ') ligne_adresse_5,
HISTO_MATRICULE.NUMERO_MATRICULE matricule,
p.NUMERO_ADHERENT
FROM
POSITION,
SECTION,
ADHERENT p,
HISTO_MATRICULE,
CIVILITE c,
ADRESSE a,
FAMILLE f,
HISTO_FAMILLE,
BLOCAGE_ADRESSE
WHERE
( BLOCAGE_ADRESSE.CODE_BLOCAGE != 'M' OR BLOCAGE_ADRESSE.CODE_BLOCAGE !=
'1' OR BLOCAGE_ADRESSE.CODE_BLOCAGE != '2' )
AND ( HISTO_FAMILLE.NUMERO_BENEFICIAIRE=p.NUMERO_BENEFIC IAIRE )
AND ( HISTO_MATRICULE.NUMERO_FAMILLE=f.NUMERO_FAMILLE )
AND ( c.CODE_CIVILITE=p.CODE_CIVILITE )
AND ( a.NUMERO_ADRESSE=p.NUMERO_ADRESSE_ADHERENT )
AND ( f.NUMERO_FAMILLE=HISTO_FAMILLE.NUMERO_FAMILLE )
AND ( p.DATE_NAISSANCE_ADHERENT > '31/12/1980' AND
p.DATE_NAISSANCE_BENEFICIAIRE < '01/01/1988' )
AND ( HISTO_MATRICULE.DATE_FIN_MATRICULE is null )
and (p.code_section = section.code_section)
and ( POSITION.CODE_POSITION = 'AD' OR POSITION.CODE_POSITION = 'AP' OR
POSITION.CODE_POSITION ='PM' )
ORDER BY
2,3;



Reply With Quote
  #2  
Old   
Stéphan Paya
 
Posts: n/a

Default Re: Probl. criteres extraction - 02-22-2005 , 08:25 AM






Salut Kevin,

je crois que le problème, c'est: " != or != or !=".
Il me semble que ce devrait plutot etre " != and != and != ", si vous voulez
éliminer M et 1 et 2.

"Kevin" <no (AT) mail (DOT) fr> wrote

Quote:
Je dois extraire de ma base, toutes les donnees des abonnes en fonction de
ce qui est dans mon "select".
Par contre, il ne faut pas que j'ai ceux dont l'adresse n'est pas bonne
(retour des courriers par la Poste avec mention NPAI) :
Pour eux, 3 criteres sont donnes :
"M" pour ceux dont l'adresse est definitivement bloquee et a qui on envoie
plus rien
"1" pour ceux dont on a recu tres peu de courrier NPAI
"2" pour ceux dont les retours NPAI sont plus importants mais pas bloques

J'ai reussi a ecrire la requete suivante mais mes criteres de selection
sur
"M", "1" et "2" ne marchent pas et je vois plus trop comment faire... Je
debute en SQL (j'ai repris la requete d'une deja faite). Si qqu'un peu me
corriger ma requete, ca serait cool et si on m'explique le principe en
meme
temps, ce serait en mieux ;-)

D'avance, merci a tous !

SELECT DISTINCT
c.LIBELLE_CIVILITE,
p.NOM_ADHERENT nom,
nls_initcap(p.PRENOM_ADHERENT) prenom,
nvl(a.LIGNE_ADRESSE_1,' ') ligne_adresse_1,
nvl(a.LIGNE_ADRESSE_2,' ') ligne_adresse_2,
nvl(a.LIGNE_ADRESSE_3,' ') ligne_adresse_3,
nvl(a.LIGNE_ADRESSE_4,' ') ligne_adresse_4,
nvl(a.LIGNE_ADRESSE_5,' ') ligne_adresse_5,
HISTO_MATRICULE.NUMERO_MATRICULE matricule,
p.NUMERO_ADHERENT
FROM
POSITION,
SECTION,
ADHERENT p,
HISTO_MATRICULE,
CIVILITE c,
ADRESSE a,
FAMILLE f,
HISTO_FAMILLE,
BLOCAGE_ADRESSE
WHERE
( BLOCAGE_ADRESSE.CODE_BLOCAGE != 'M' OR BLOCAGE_ADRESSE.CODE_BLOCAGE !=
'1' OR BLOCAGE_ADRESSE.CODE_BLOCAGE != '2' )
AND ( HISTO_FAMILLE.NUMERO_BENEFICIAIRE=p.NUMERO_BENEFIC IAIRE )
AND ( HISTO_MATRICULE.NUMERO_FAMILLE=f.NUMERO_FAMILLE )
AND ( c.CODE_CIVILITE=p.CODE_CIVILITE )
AND ( a.NUMERO_ADRESSE=p.NUMERO_ADRESSE_ADHERENT )
AND ( f.NUMERO_FAMILLE=HISTO_FAMILLE.NUMERO_FAMILLE )
AND ( p.DATE_NAISSANCE_ADHERENT > '31/12/1980' AND
p.DATE_NAISSANCE_BENEFICIAIRE < '01/01/1988' )
AND ( HISTO_MATRICULE.DATE_FIN_MATRICULE is null )
and (p.code_section = section.code_section)
and ( POSITION.CODE_POSITION = 'AD' OR POSITION.CODE_POSITION = 'AP' OR
POSITION.CODE_POSITION ='PM' )
ORDER BY
2,3;





Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.