|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : octobre 2011 Messages : 20 ![]() |
Bonjour à tous,
Je n'ai pas fais de SQL depuis plusieurs années, mais dans le cadre du développement d'une base Access, j'ai eu besoin de m'y remettre... Jusque là, ça allait, mais je bloque et j'ai besoin de votre aide Ma base concerne des plantes. Une plante appartient à une espèce, qui appartient à un genre, qui appartient à une famille. Et, parfois, une plante appartient aussi à une sous-espèce. Dans ma table "Plante", j'ai donc l'identifiant de l'espèce (obligatoire et qui me permet de retrouver genre et famille) et l'identifiant de la sous-espèce (parfois null). Le code suivant me permet de récupérer tout ce qu'il me faut concernant la plante, l'espèce, le genre et la famille (et la dernière année de floraison, mais passons ^^) : Code :
Je suis compréhensible ? ![]() J'ai regardé du coté des UNION, JOIN... mais je n'ai bien compris leurs fonctionnements et la transposition des exemples que j'ai trouvé ne m'a donné que des erreurs. ![]() Donc si quelqu'un pouvait me mettre sur la voie, ça serait cool ! ![]() Merci d'avance ! |
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() |
Salut,
Regarde la fonction LEFT JOIN cela devrait convenir à ce que tu veux faire. @+.
__________________
N'oubliez pas le Tag : ![]() C'est en parvenant à nos fins par l'effort, en étant prêt à faire le sacrifice de profits immédiats en faveur du bien-être d'autrui à long terme, que nous parviendrons au bonheur caractérisé par la paix et le contentement authentique. [Dalaï Lama] Je ne réponds pas aux messages privés s'ils sont liés à une question du forum Mon site sur Developpez.com |
|
|
10
|
|
|
#3 | |||||
|
Invité régulier
![]() Inscription : octobre 2011 Messages : 20 ![]() |
Bonjour et merci de ta réponse.
En effet, LEFT JOIN semble être l'opérateur qu'il me faut après lecture de la doc. Merci Par contre, j'ai un soucis de syntaxe maintenant... Le code dans mon 1er post marche. Le code suivant marche aussi : Code :
Par contre, je n'arrive pas à réunir des deux codes... Code :
Citation:
Si oui, comment ? |
|||||
|
|
00
|
|
|
#4 | ||
|
Membre confirmé
![]() Grégoire MARTINIngénieur développement logiciels Inscription : janvier 2011 Messages : 128 ![]() |
Bonjour,
Il ne faut pas melanger les 2 syntaxes . Code :
__________________
Cordialement. |
||
|
|
20
|
|
|
#5 | |
|
Invité régulier
![]() Inscription : octobre 2011 Messages : 20 ![]() |
Bonjour ORA et merci de t'intéresser aussi à mon problème
![]() Effectivement, pour les syntaxes, j'avais un doute... Mais je ne pensais que chaque jonction devait se rapporter directement à "FROM Plante", ce qui n'est pas le cas pour Genre et Famille et, donc, je ne voyais pas comment l'écrire ![]() J'ai utilisé ta syntaxe (qui me semble correcte, d'après ce que j'ai pu apprendre aujourd'hui), mais j'ai droit à un beau message d'erreur : Citation:
|
|
|
|
00
|
|
|
#6 | ||
![]() ![]() Alain Ingénieur d'études décisionnel Inscription : mai 2002 Messages : 4 446 ![]() |
En effet, avec Access il faut encadrer chaque niveau de jointure avec des parenthèses.
Code :
__________________
Modérateur Langage SQL N'oubliez pas le bouton et pensez aux balises [code]Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur ![]() |
||
|
|
20
|
|
|
#7 | ||
|
Invité régulier
![]() Inscription : octobre 2011 Messages : 20 ![]() |
Salut al1_24 et merci pour l'histoire des parenthèses
Pour la sous-espèce, tout marche nickel. Je récupère exactement ce que je voulais. Merci à tous ![]() Mais bon, comme, c'était trop facile ( Je ne m'étais pas aperçu que le champs "Année_floraison" aussi pouvait ne pas être rempli ! Un MAX... sur un champ potentiellement vide... pour jointer... J'ai découvert qu'on pouvait jointer sur une requête et j'ai réussi à m'en sortir ![]() Pour la petite histoire, ça donne ça : Code :
Grand merci à tous
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com