Probl. criteres extraction
From: Kevin <no_at_mail.fr>
Date: Tue, 22 Feb 2005 04:40:32 +0100
Message-ID: <421aa98e$2$30039$636a15ce_at_news.free.fr>
[Quoted] 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
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 !=
ORDER BY
2,3; Received on Tue Feb 22 2005 - 04:40:32 CET
Date: Tue, 22 Feb 2005 04:40:32 +0100
Message-ID: <421aa98e$2$30039$636a15ce_at_news.free.fr>
[Quoted] 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_BENEFICIAIRE ) 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' ORPOSITION.CODE_POSITION ='PM' )
ORDER BY
2,3; Received on Tue Feb 22 2005 - 04:40:32 CET