OVH Cloud OVH Cloud

Requête complexe

4 réponses
Avatar
konga
Bonjour à tous,

J'ai les informations suivantes dans une liste de donnée (1, 2, 3, 4,
5)
Et dans une table j'ai les informations suivantes (2, 4, 6, 8, 10)

Je cherche à faire une requête qui ne me retourne que les éléments de
ma sélection n'appartenant pas à la table soit 1, 3 et 5.

Qui saurait me dire comment faire une telle requête en SQL ?

Merci.

4 réponses

Avatar
Raymond [mvp]
Bonjour.

utilise l'assistant et fais une requête de non correspondance.
exemple:
SELECT table1.*
FROM table1 LEFT JOIN table2 ON table1.Numéro = table2.Numéro
WHERE (((table2.Numéro) Is Null));


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Fred" a écrit dans le message de
news:
Bonjour à tous,

J'ai les informations suivantes dans une liste de donnée (1, 2, 3, 4,
5)
Et dans une table j'ai les informations suivantes (2, 4, 6, 8, 10)

Je cherche à faire une requête qui ne me retourne que les éléments de
ma sélection n'appartenant pas à la table soit 1, 3 et 5.

Qui saurait me dire comment faire une telle requête en SQL ?

Merci.


Avatar
Frederic LE GUEN
Non, c'est pas tout à fait ça.

En fait, ma première liste est incluse dans ma requête genre :
SELECT *
FROM Table1
WHERE Element1 IN (1, 2, 3, 4, 5)

Et c'est dans la table 1 que j'ai mes valeurs 2, 4, 6, 8, 10

Cette requête me donne comme résultat 2, 4
Ce que je souhaite c'est trouver 1, 3, 5 (toutes les valeurs de la liste
n'appartenant pas à la table en somme.

Qui peut me fournir une telle requête. Merci.

"Raymond [mvp]" a écrit dans le message de
news:
Bonjour.

utilise l'assistant et fais une requête de non correspondance.
exemple:
SELECT table1.*
FROM table1 LEFT JOIN table2 ON table1.Numéro = table2.Numéro
WHERE (((table2.Numéro) Is Null));


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Fred" a écrit dans le message de
news:
Bonjour à tous,

J'ai les informations suivantes dans une liste de donnée (1, 2, 3, 4,
5)
Et dans une table j'ai les informations suivantes (2, 4, 6, 8, 10)

Je cherche à faire une requête qui ne me retourne que les éléments de
ma sélection n'appartenant pas à la table soit 1, 3 et 5.

Qui saurait me dire comment faire une telle requête en SQL ?

Merci.






Avatar
Raymond [mvp]
fais le contraire:
SELECT *
FROM Table1
WHERE Table1.Numéro Not In (1, 2, 3, 4, 5);

si tu n'as qu'une seule table et une liste de valeurs tu n'as pas beaucoup
de choix.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Frederic LE GUEN" a écrit dans le
message de news:40e0022c$0$7947$
Non, c'est pas tout à fait ça.

En fait, ma première liste est incluse dans ma requête genre :
SELECT *
FROM Table1
WHERE Element1 IN (1, 2, 3, 4, 5)

Et c'est dans la table 1 que j'ai mes valeurs 2, 4, 6, 8, 10

Cette requête me donne comme résultat 2, 4
Ce que je souhaite c'est trouver 1, 3, 5 (toutes les valeurs de la liste
n'appartenant pas à la table en somme.

Qui peut me fournir une telle requête. Merci.


Avatar
Frederic LE GUEN
Déjà fait aussi.
Là, ça me renvoi 6, 8, 10 (normal, ceux qui sont endehors de la liste
donnée)

Je pense effectivement qu'il n'y a pas de solution vu que je ne peux pas
faire une requête sur 2 tables mais sur une seule.

Merci d'avoir essayé en tout cas.

"Raymond [mvp]" a écrit dans le message de
news:
fais le contraire:
SELECT *
FROM Table1
WHERE Table1.Numéro Not In (1, 2, 3, 4, 5);

si tu n'as qu'une seule table et une liste de valeurs tu n'as pas beaucoup
de choix.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Frederic LE GUEN" a écrit dans le
message de news:40e0022c$0$7947$
Non, c'est pas tout à fait ça.

En fait, ma première liste est incluse dans ma requête genre :
SELECT *
FROM Table1
WHERE Element1 IN (1, 2, 3, 4, 5)

Et c'est dans la table 1 que j'ai mes valeurs 2, 4, 6, 8, 10

Cette requête me donne comme résultat 2, 4
Ce que je souhaite c'est trouver 1, 3, 5 (toutes les valeurs de la liste
n'appartenant pas à la table en somme.

Qui peut me fournir une telle requête. Merci.