OVH Cloud OVH Cloud

Position d'un enregistrement

4 réponses
Avatar
Alain
Bonjour,

Je fais une requête sur une table appelée OPTION qui permet
de décrire les différentes options décrivant un bien

Structure:
Numéro de bien (Numero auto)
Numéro option (Numero auto)
Libellé (Texte)

Pour un bien on peut avoir n options, le numéro d'option étant automatique,
du fait que l'on peut revenir sur un bien pour lui ajouter des options à
tout moment implique que pour un même bien les numéro d'option ne se suiv pas.

Connaissez vous un moyen dans une requête de connaître pour chaque option son
vraie numéro d'option par rapport au bien.

ex:
"Numéro bien" "Numéro Option" "Libellé " "Vraie numéro Option"
12 4 Option 1 bien 12
1
12 5 Option 2 bien 12
2
12 15 Option 3 bien 12
3
21 1 Option 1 bien 21
1
21 8 Option 2 bien 21
2
21 35 Option 3 bien 21
3

Merci Alain

4 réponses

Avatar
Raymond [mvp]
Bonjour.

à mon avis il ne faut pas passer par une clé numauto mais par une clé
personnelle incluant le numéro de bien et un numéro d'ordre dans ce bien.
lorsque tu crées tes options, tu vas rechercher le dernier numéro du bien
par un DMax dans ta table d'option et tu rajoutes 1 avant de le placer dans
ton enregistrement.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://www.mpfa.info/ pour débuter sur le forum
Formez-vous en ligne grâce aux Webcasts Microsoft Technet :
http://www.microsoft.com/france/technet/seminaires/webcasts.mspx


"Alain" a écrit dans le message de news:

Bonjour,

Je fais une requête sur une table appelée OPTION qui permet
de décrire les différentes options décrivant un bien

Structure:
Numéro de bien (Numero auto)
Numéro option (Numero auto)
Libellé (Texte)

Pour un bien on peut avoir n options, le numéro d'option étant
automatique,
du fait que l'on peut revenir sur un bien pour lui ajouter des options à
tout moment implique que pour un même bien les numéro d'option ne se suiv
pas.

Connaissez vous un moyen dans une requête de connaître pour chaque option
son
vraie numéro d'option par rapport au bien.

ex:
"Numéro bien" "Numéro Option" "Libellé " "Vraie numéro
Option"
12 4 Option 1 bien 12
1
12 5 Option 2 bien 12
2
12 15 Option 3 bien 12
3
21 1 Option 1 bien 21
1
21 8 Option 2 bien 21
2
21 35 Option 3 bien 21
3

Merci Alain


Avatar
Leti
Bonjour,
Bonjour Alain !

Je fais une requête sur une table appelée OPTION qui permet
de décrire les différentes options décrivant un bien
Structure:
Numéro de bien (Numero auto)
Numéro option (Numero auto)
Libellé (Texte)
Pour un bien on peut avoir n options, le numéro d'option étant automatique,
du fait que l'on peut revenir sur un bien pour lui ajouter des options à
tout moment implique que pour un même bien les numéro d'option ne se suiv pas.
Connaissez vous un moyen dans une requête de connaître pour chaque option son
vraie numéro d'option par rapport au bien.


Je pense à la requête suivante :
SELECT OPTION.numero_bien,
OPTION.numero_option,
OPTION.libelle,
((SELECT COUNT(*)
FROM OPTION O
WHERE O.numero_bien = OPTION.numero_bien
AND O.numero_option < OPTION.numero_option) + 1 AS position_option
FROM OPTION;

position_option te donnes le nombre d'options pour le bien où le numéro auto
est plus petit que celui en cours ... donc la position ??!!
Ca mouline si tu as pleins d'options par bien ... mais ca marche ...


ex:
"Numéro bien" "Numéro Option" "Libellé " "Vraie numéro Option"
12 4 Option 1 bien 12
1
12 5 Option 2 bien 12
2
12 15 Option 3 bien 12
3
21 1 Option 1 bien 21
1
21 8 Option 2 bien 21
2
21 35 Option 3 bien 21
3
Merci Alain


Avatar
Alain
Merci et bonjour Leti,

lorsque j'essaye ta requête Access XP me dit erreur de syntaxe,
l'as tu essayée ?

Alain


Bonjour,
Bonjour Alain !

Je fais une requête sur une table appelée OPTION qui permet
de décrire les différentes options décrivant un bien
Structure:
Numéro de bien (Numero auto)
Numéro option (Numero auto)
Libellé (Texte)
Pour un bien on peut avoir n options, le numéro d'option étant automatique,
du fait que l'on peut revenir sur un bien pour lui ajouter des options à
tout moment implique que pour un même bien les numéro d'option ne se suiv pas.
Connaissez vous un moyen dans une requête de connaître pour chaque option son
vraie numéro d'option par rapport au bien.


Je pense à la requête suivante :
SELECT OPTION.numero_bien,
OPTION.numero_option,
OPTION.libelle,
((SELECT COUNT(*)
FROM OPTION O
WHERE O.numero_bien = OPTION.numero_bien
AND O.numero_option < OPTION.numero_option) + 1 AS position_option
FROM OPTION;

position_option te donnes le nombre d'options pour le bien où le numéro auto
est plus petit que celui en cours ... donc la position ??!!
Ca mouline si tu as pleins d'options par bien ... mais ca marche ...


ex:
"Numéro bien" "Numéro Option" "Libellé " "Vraie numéro Option"
12 4 Option 1 bien 12
1
12 5 Option 2 bien 12
2
12 15 Option 3 bien 12
3
21 1 Option 1 bien 21
1
21 8 Option 2 bien 21
2
21 35 Option 3 bien 21
3
Merci Alain




Avatar
Alain
J'ai la soultion à mon problème, je me suis inspiré de la solution au post de
chr "Requête avec position enregistrement" du même jour,

Merci à tous Alain

SELECT Count(OPTION.[Numero option]) AS NumOption, OPTION.[Numero bien],
OPTION.[Numero option], OPTION.[Libelle option]
FROM [OPTION] INNER JOIN [OPTION] AS OPTION_1 ON (OPTION.[Numero
option]>=OPTION_1.[Numero option]) AND (OPTION.[Numero bien]=OPTION_1.[Numero
bien])
GROUP BY OPTION.[Numero bien], OPTION.[Numero option], OPTION.[Libelle option]
ORDER BY Count(OPTION.[Numero bien]);



Bonjour,

Je fais une requête sur une table appelée OPTION qui permet
de décrire les différentes options décrivant un bien

Structure:
Numéro de bien (Numero auto)
Numéro option (Numero auto)
Libellé (Texte)

Pour un bien on peut avoir n options, le numéro d'option étant automatique,
du fait que l'on peut revenir sur un bien pour lui ajouter des options à
tout moment implique que pour un même bien les numéro d'option ne se suiv pas.

Connaissez vous un moyen dans une requête de connaître pour chaque option son
vraie numéro d'option par rapport au bien.

ex:
"Numéro bien" "Numéro Option" "Libellé " "Vraie numéro Option"
12 4 Option 1 bien 12
1
12 5 Option 2 bien 12
2
12 15 Option 3 bien 12
3
21 1 Option 1 bien 21
1
21 8 Option 2 bien 21
2
21 35 Option 3 bien 21
3

Merci Alain