Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
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 24/10/2011, 16h06   #1
Invité de passage
 
Homme Franck Pagès
Administrateur systèmes et réseaux
Inscription : septembre 2011
Messages : 3
Détails du profil
Informations personnelles :
Nom : Homme Franck Pagès
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Administrateur systèmes et réseaux
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : septembre 2011
Messages : 3
Points : 0
Points : 0
Par défaut Problème doublon et affichage dans une requête

Bonjour à tous,

Pour commencer je suis nouveau sur le forum donc pardonnez mon inexpérience. De plus j'ai qu'une très légère formation en développement (Niveau BTS Compta).
Je vous résume déjà un peu la situation:
Je travail dans un Ets social accueillant plusieurs type de personnes appelé Hébergé (Enfant ou jeunes maman). Nous sommes financé par le CG et nous devons transmettre chaque semaines un tableau (excel) appelé TOBEAU qui comporte plusieurs éléments. Avec ma base, j'ai pour objectif de remplir ce tableau avec des éléments qui sont soit identique au champ de la base et d'autre calculé.
J'ai par exemple pour la même personne la possibilité qu'elle soit pour une période donné prise en charges dans une autre structure d'accueil (médical ou autres). Il est aussi possible que cette personne est plusieurs APC (Autres prises en charges) de type différent : 1 en IME et 1 autre en ITEP. J'aimerai que dans ma requête, il ne ressorte qu'une seule ligne par personnes même si celle là aurait eu plusieurs APC. Car pour l'instant Access me ressort 2 ligne, une par APC.

Voici le SQL de ma requête:

SELECT [Situation d'accueil].[Service de rattachement].Value AS Ets, [Personnes accueillies].Nom, [Personnes accueillies].Prénom, [Personnes accueillies].[Date de naissance], [Situation d'accueil].[Date d'entrée], [Situation d'accueil].[Date de sortie], IIf([Date de sortie]>1,"0","1") AS [Présent (1) sorti ou vide (0)], [Personnes accueillies].Sexe, [Situation d'accueil].[commune de l'autorité parentale], [Commune de l'autorité parentale].Code AS [Territoire de cette commune], [Situation d'accueil].[Institutions référentes], [Situation d'accueil].[Territoire de suivi de l'enfant], [Situation d'accueil].[Mesure à l'admission entrée] AS [Mesure à l'admission], [Situation d'accueil].Scolarisation, Date() AS [Date du jour], IIf([Date de sortie]>1,"NC",Round((Nz([Situation d'accueil]![Date de sortie],Date())-Nz([Situation d'accueil]![Date d'entrée],Date()))/30,1)) AS [Nb de mois de présences des enfants accueillis], [Situation d'accueil].[Date 1er Orientation] AS [Date à laquelle la 1er orientation est posée], IIf([Date 1er Orientation]>1,Round((Nz([Situation d'accueil]![Date 1er Orientation],Date())-Nz([Situation d'Accueil]![Date d'entrée],Date()))/30,1),"") AS [Durée de determination du type d'Orientation], [Situation d'accueil].[Motif si pas d'orientation posés après 4 mois de présences], [Situation d'accueil].[1er Orientation posée] AS [Type d'Orientation posée], [Situation d'accueil].[Orientation avec prise en compte du critère Fratrie], IIf([Type APC]="","",[Type APC]) AS [Orientation complémentaire soin], [Situation d'accueil].[Orientation avec contrainte droit de visite], [Situation d'accueil].[Motif si orientation non mise en oeuvre au bout de 6 mois], IIf([Date de sortie]>1,Round((Nz([Situation d'accueil]![Date de sortie],Date())-Nz([Situation d'accueil]![Date d'entrée],Date()))/30,1),"NC") AS [Durée de séjour des enfants sortis (en mois)], [Situation d'accueil].[Orientation trouvée], [Situation d'accueil].[Lieu d'Accueil à la sortie], [Situation d'accueil].[Plus médico-social ou soins]
FROM ([Commune de l'autorité parentale] RIGHT JOIN ([Personnes accueillies] RIGHT JOIN [Situation d'accueil] ON [Personnes accueillies].[N° de dossier hébérgé] = [Situation d'accueil].[N° de dossier hébérgé]) ON [Commune de l'autorité parentale].ID = [Situation d'accueil].[commune de l'autorité parentale]) LEFT JOIN [Autres prises en charges] ON [Situation d'accueil].N° = [Autres prises en charges].[N° situation]
WHERE ((([Situation d'accueil].[Service de rattachement].Value)=[Veuillez saisir votre service]))
ORDER BY [Situation d'accueil].[Date d'entrée];


La colonne ou ce situe le problème devra s'appelé : Autres orientation complémentaire soins.
J'ai essayé plusieurs chose comme indiqué pour les APC un champ appelé APC Prioritaire de type Oui/Non Si oui alors ne ressortir que le champ correspondant mais alors ils me zappent les lignes pour des enfants n'ayant pas d'enregistrement dans la table APC.
Je sais pas si je vous ai donné assez d’élément et d'explication mais n'hésitez pas à m'en demandez +.

Merci d'avance pour vôtre aide.
lordfrancky38 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2011, 21h05   #2
Membre chevronné
 
Avatar de alassanediakite
 
Homme Alassane Diakité
Conseil - Consultant en systèmes d'information
Inscription : août 2006
Messages : 539
Détails du profil
Informations personnelles :
Nom : Homme Alassane Diakité
Âge : 34
Localisation : Mali

Informations professionnelles :
Activité : Conseil - Consultant en systèmes d'information

Informations forums :
Inscription : août 2006
Messages : 539
Points : 604
Points : 604
Envoyer un message via Yahoo à alassanediakite
Salut
Peux-tu présenter un échantillon brut des données puis un exemple de sortie de données telle que tu le veux?
Pour le moment sache qu'il est impossible (un mot à éviter en informatique!) d'afficher une ligne par enregistrement d'une table T1 si tu veux afficher des données d'une autre table T2 avec laquelle T1 une association 1 à plusieurs!
La jointure peut rester dans la requête mais aucun champ de T2 ne doit être afficher et il faut utiliser le "SELECT DISTINCT..."
Bon courage!
__________________
Le monde est trop bien programmé pour être l’œuvre du hasard…
alassanediakite est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 10h55   #3
Invité de passage
 
Homme Franck Pagès
Administrateur systèmes et réseaux
Inscription : septembre 2011
Messages : 3
Détails du profil
Informations personnelles :
Nom : Homme Franck Pagès
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Administrateur systèmes et réseaux
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : septembre 2011
Messages : 3
Points : 0
Points : 0
Pour commencer merci de me répondre.
Je vais essayer d'expliquer un peu mieux.
Alors j'ai 3 table principal:
T1 correspondant au personnes accueilli avec une relation 1 à plusieurs avec T2 qui elle gère les situations d'accueil (1 personnes peu avoir plusieurs situation d'accueil). Enfin j'ai une T3 lié à T2 avec 1 à plusieurs (1 APC correspond à 1 seul situation d'accueil mais 1 situation d'accueil peut avoir plusieurs APC) qui gère les autres prises en charges extérieur (APC). En PJ la copie d'écran des relations car j'ai peut être fais une erreur à ce niveau. Elle a 5 champs, la clé primaire (N° auto), le N° de la situation d'accueil correspondante, Type APC qui donne le champ à sortir pour mon extraction, date de début APC et la date de fin APC. Dans le tableau excel (PJ), c'est la colonne bleuté qui me pose problème. En effet si pour 1 situation d'accueil il y a plusieurs APC il me sort un nombre de ligne correspondant à ce nombre. J'ai peut être pensé à créer une table double (je me rappelle plus du nom), avec une APC Prioritaire et une autre APC secondaire mais bon je sais pas trop comment faire. Pour le reste des colonne ça fonctionne, j'ai juste un problème pour celle ci.
Fichiers attachés
Type de fichier : xls Tobeauexemple.xls (26,0 Ko, 5 affichages)
Type de fichier : doc Relation.doc (225,0 Ko, 3 affichages)
lordfrancky38 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 11h59.


 
 
 
 
Partenaires

Hébergement Web