OVH Cloud OVH Cloud

[SQL] C possible ou pas ?

6 réponses
Avatar
John Fuss
Bonjour,

j'espère ne pas être trop HS,

dans ma boite qd un produit passe à la version supérieure son code produit
passe à + 1, ex: 5123 -> 5124

j'ai une table contenant ces codes produits (long), je voudrai extraire tous
les codes produits dont la référence en -1 existe dans cette même table.
Comment dois-je m'y prendre ? Access me permet de le faire, en SQL peut-être
?

Merci d'avance.

John

6 réponses

Avatar
Michel Walsh
Salut,


SELECT a.*
FROM maTable As a LEFT JOIN maTable As b
ON a.codeProduit-1 = b.codeProduit
WHERE b.codeProduit Is Null


devrait faire l'affaire.


Espérant être utile,
Vanderghast, Access MVP


"John Fuss" wrote in message
news:bqfo4a$g02$
Bonjour,

j'espère ne pas être trop HS,

dans ma boite qd un produit passe à la version supérieure son code produit
passe à + 1, ex: 5123 -> 5124

j'ai une table contenant ces codes produits (long), je voudrai extraire
tous

les codes produits dont la référence en -1 existe dans cette même table.
Comment dois-je m'y prendre ? Access me permet de le faire, en SQL
peut-être

?

Merci d'avance.

John




Avatar
John Fuss
Merci Michel,

je vais tester ça.... euhh, je suis pas très fort en SQL mais prkoi
b.CodeProduit is Null ?

Merci

John

"Michel Walsh" a écrit dans le message
de news:
Salut,


SELECT a.*
FROM maTable As a LEFT JOIN maTable As b
ON a.codeProduit-1 = b.codeProduit
WHERE b.codeProduit Is Null


devrait faire l'affaire.


Espérant être utile,
Vanderghast, Access MVP


"John Fuss" wrote in message
news:bqfo4a$g02$
Bonjour,

j'espère ne pas être trop HS,

dans ma boite qd un produit passe à la version supérieure son code
produit


passe à + 1, ex: 5123 -> 5124

j'ai une table contenant ces codes produits (long), je voudrai extraire
tous

les codes produits dont la référence en -1 existe dans cette même table.
Comment dois-je m'y prendre ? Access me permet de le faire, en SQL
peut-être

?

Merci d'avance.

John








Avatar
Michel Walsh
Salut,


Parce que si il y a "match", la valeur de codeProduit sera fournie.

Si il n'y a pas de match, áu sens de
a.codeProduit-1 = b.codeProduit

puisqu'on force SQL à quand même produire quelque chose pour la table "a"
( de par FROM a LEFT JOIN b ON ..., on demande de conserver toutes les
lignes de la table "a" ), il demeure que le champ b.quelquechose ne peut
rien afficher d'autre, dans ce cas de "non-match", que la valeur NULL, car
pas de match lui permettant de choisir une valeur. Donc, pas de 'match'
implique

WHERE b.cléPrimaire Is Null

où, on comprend, le NULL apparaît APRÈS que la jointure est effectuée, car,
en effet, la clé primaire ne peut, initialement, avoir des valeurs NULL.

Techniquement, on peut également utiliser la chmps impliqué, car même si il
peut avoir initialement une valeur NULL dans ce champ (avant la jointure),
car ce champ n'est pas la clé primaire. En effet, même dans ce cas, la
comparaison NULL = NULL retourne NULL, donc, techniquement, pas un match.



Espérant être utile,
Vanderghast, Access MVP

"John Fuss" wrote in message
news:bqfpmv$gte$
Merci Michel,

je vais tester ça.... euhh, je suis pas très fort en SQL mais prkoi
b.CodeProduit is Null ?

Merci

John

"Michel Walsh" a écrit dans le
message

de news:
Salut,


SELECT a.*
FROM maTable As a LEFT JOIN maTable As b
ON a.codeProduit-1 = b.codeProduit
WHERE b.codeProduit Is Null


devrait faire l'affaire.


Espérant être utile,
Vanderghast, Access MVP


"John Fuss" wrote in message
news:bqfo4a$g02$
Bonjour,

j'espère ne pas être trop HS,

dans ma boite qd un produit passe à la version supérieure son code
produit


passe à + 1, ex: 5123 -> 5124

j'ai une table contenant ces codes produits (long), je voudrai
extraire



tous
les codes produits dont la référence en -1 existe dans cette même
table.



Comment dois-je m'y prendre ? Access me permet de le faire, en SQL
peut-être

?

Merci d'avance.

John












Avatar
John Fuss
Bravo pour tes explications, je te remercie.

Je vais mettre ça en place de suite.

John

"Michel Walsh" a écrit dans le message
de news:%
Salut,


Parce que si il y a "match", la valeur de codeProduit sera fournie.

Si il n'y a pas de match, áu sens de
a.codeProduit-1 = b.codeProduit

puisqu'on force SQL à quand même produire quelque chose pour la table "a"
( de par FROM a LEFT JOIN b ON ..., on demande de conserver toutes les
lignes de la table "a" ), il demeure que le champ b.quelquechose ne peut
rien afficher d'autre, dans ce cas de "non-match", que la valeur NULL,
car

pas de match lui permettant de choisir une valeur. Donc, pas de 'match'
implique

WHERE b.cléPrimaire Is Null

où, on comprend, le NULL apparaît APRÈS que la jointure est effectuée,
car,

en effet, la clé primaire ne peut, initialement, avoir des valeurs NULL.

Techniquement, on peut également utiliser la chmps impliqué, car même si
il

peut avoir initialement une valeur NULL dans ce champ (avant la jointure),
car ce champ n'est pas la clé primaire. En effet, même dans ce cas, la
comparaison NULL = NULL retourne NULL, donc, techniquement, pas un match.



Espérant être utile,
Vanderghast, Access MVP

"John Fuss" wrote in message
news:bqfpmv$gte$
Merci Michel,

je vais tester ça.... euhh, je suis pas très fort en SQL mais prkoi
b.CodeProduit is Null ?

Merci

John

"Michel Walsh" a écrit dans le
message

de news:
Salut,


SELECT a.*
FROM maTable As a LEFT JOIN maTable As b
ON a.codeProduit-1 = b.codeProduit
WHERE b.codeProduit Is Null


devrait faire l'affaire.


Espérant être utile,
Vanderghast, Access MVP


"John Fuss" wrote in message
news:bqfo4a$g02$
Bonjour,

j'espère ne pas être trop HS,

dans ma boite qd un produit passe à la version supérieure son code
produit


passe à + 1, ex: 5123 -> 5124

j'ai une table contenant ces codes produits (long), je voudrai
extraire



tous
les codes produits dont la référence en -1 existe dans cette même
table.



Comment dois-je m'y prendre ? Access me permet de le faire, en SQL
peut-être

?

Merci d'avance.

John
















Avatar
John Fuss
Sachant que mon champ codpro est un un champ texte, comment puis-je le
convertir en nombre ?

Merci

John


"John Fuss" a écrit dans le message de
news:bqhhnn$1h4$
Bravo pour tes explications, je te remercie.

Je vais mettre ça en place de suite.

John

"Michel Walsh" a écrit dans le
message

de news:%
Salut,


Parce que si il y a "match", la valeur de codeProduit sera fournie.

Si il n'y a pas de match, áu sens de
a.codeProduit-1 = b.codeProduit

puisqu'on force SQL à quand même produire quelque chose pour la table
"a"


( de par FROM a LEFT JOIN b ON ..., on demande de conserver toutes les
lignes de la table "a" ), il demeure que le champ b.quelquechose ne peut
rien afficher d'autre, dans ce cas de "non-match", que la valeur NULL,
car

pas de match lui permettant de choisir une valeur. Donc, pas de 'match'
implique

WHERE b.cléPrimaire Is Null

où, on comprend, le NULL apparaît APRÈS que la jointure est effectuée,
car,

en effet, la clé primaire ne peut, initialement, avoir des valeurs NULL.

Techniquement, on peut également utiliser la chmps impliqué, car même si
il

peut avoir initialement une valeur NULL dans ce champ (avant la
jointure),


car ce champ n'est pas la clé primaire. En effet, même dans ce cas, la
comparaison NULL = NULL retourne NULL, donc, techniquement, pas un
match.





Espérant être utile,
Vanderghast, Access MVP

"John Fuss" wrote in message
news:bqfpmv$gte$
Merci Michel,

je vais tester ça.... euhh, je suis pas très fort en SQL mais prkoi
b.CodeProduit is Null ?

Merci

John

"Michel Walsh" a écrit dans le
message

de news:
Salut,


SELECT a.*
FROM maTable As a LEFT JOIN maTable As b
ON a.codeProduit-1 = b.codeProduit
WHERE b.codeProduit Is Null


devrait faire l'affaire.


Espérant être utile,
Vanderghast, Access MVP


"John Fuss" wrote in message
news:bqfo4a$g02$
Bonjour,

j'espère ne pas être trop HS,

dans ma boite qd un produit passe à la version supérieure son code
produit


passe à + 1, ex: 5123 -> 5124

j'ai une table contenant ces codes produits (long), je voudrai
extraire



tous
les codes produits dont la référence en -1 existe dans cette même
table.



Comment dois-je m'y prendre ? Access me permet de le faire, en SQL
peut-être

?

Merci d'avance.

John




















Avatar
John Fuss
j'ai trouvé, c val(codpro)

john

"John Fuss" a écrit dans le message de
news:bqhiv4$2cu$
Sachant que mon champ codpro est un un champ texte, comment puis-je le
convertir en nombre ?

Merci

John


"John Fuss" a écrit dans le message de
news:bqhhnn$1h4$
Bravo pour tes explications, je te remercie.

Je vais mettre ça en place de suite.

John

"Michel Walsh" a écrit dans le
message

de news:%
Salut,


Parce que si il y a "match", la valeur de codeProduit sera fournie.

Si il n'y a pas de match, áu sens de
a.codeProduit-1 = b.codeProduit

puisqu'on force SQL à quand même produire quelque chose pour la table
"a"


( de par FROM a LEFT JOIN b ON ..., on demande de conserver toutes
les



lignes de la table "a" ), il demeure que le champ b.quelquechose ne
peut



rien afficher d'autre, dans ce cas de "non-match", que la valeur
NULL,



car
pas de match lui permettant de choisir une valeur. Donc, pas de
'match'



implique

WHERE b.cléPrimaire Is Null

où, on comprend, le NULL apparaît APRÈS que la jointure est effectuée,
car,

en effet, la clé primaire ne peut, initialement, avoir des valeurs
NULL.




Techniquement, on peut également utiliser la chmps impliqué, car même
si



il
peut avoir initialement une valeur NULL dans ce champ (avant la
jointure),


car ce champ n'est pas la clé primaire. En effet, même dans ce cas, la
comparaison NULL = NULL retourne NULL, donc, techniquement, pas un
match.





Espérant être utile,
Vanderghast, Access MVP

"John Fuss" wrote in message
news:bqfpmv$gte$
Merci Michel,

je vais tester ça.... euhh, je suis pas très fort en SQL mais prkoi
b.CodeProduit is Null ?

Merci

John

"Michel Walsh" a écrit dans le
message

de news:
Salut,


SELECT a.*
FROM maTable As a LEFT JOIN maTable As b
ON a.codeProduit-1 = b.codeProduit
WHERE b.codeProduit Is Null


devrait faire l'affaire.


Espérant être utile,
Vanderghast, Access MVP


"John Fuss" wrote in message
news:bqfo4a$g02$
Bonjour,

j'espère ne pas être trop HS,

dans ma boite qd un produit passe à la version supérieure son
code






produit
passe à + 1, ex: 5123 -> 5124

j'ai une table contenant ces codes produits (long), je voudrai
extraire



tous
les codes produits dont la référence en -1 existe dans cette
même






table.
Comment dois-je m'y prendre ? Access me permet de le faire, en
SQL






peut-être
?

Merci d'avance.

John