Requête access pour champ égal à 0 et non vid

Fermé
thebends31 Messages postés 3 Date d'inscription dimanche 3 janvier 2010 Statut Membre Dernière intervention 3 janvier 2010 - 3 janv. 2010 à 14:30
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 - 4 janv. 2010 à 18:55
Bonjour,
Je veux mettre en place un critère dans une requête access qui enlèverait les enregistrements où un champ "X" est égal à 0 mais sans supprimer les enregistrements où le champ "X" est vide.
A la base j'avais marqué dans la case critère pour le champ "X" en question de la requête : <>0
Le problème c'est que ça me supprime comme je le voulais les enregistrements où "0" apparaît dans le champ "X" mais aussi les enregistrements où le champ "X" est vide.
Comment écrire mon critère pour que ma requête fasse la différence entre "0" et vide pour le champ "X"?
Merci par avance de votre réponse.

Chris

5 réponses

Jean_Jacques Messages postés 1040 Date d'inscription mercredi 30 avril 2008 Statut Membre Dernière intervention 1 août 2014 112
3 janv. 2010 à 14:46
Bonjour thebends31,

Sans avoir testé, l'argument : <>"" associé par un "and" avec <>"0"
Me paraît plausible ...

Cordialement
0
thebends31 Messages postés 3 Date d'inscription dimanche 3 janvier 2010 Statut Membre Dernière intervention 3 janvier 2010
3 janv. 2010 à 18:20
Bonjour et merci pour ta réponse mais malheureusement cela ne marche pas...
Je continue donc de chercher...
Merci encore

Chris
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
3 janv. 2010 à 20:40
si tu ne dois faire ca qu 1 seule fois tu peux faire:

update ta_table set ton champ = quelque chose facilement reperable qui n' existe pas ds ta table genre 10000000000 where ton champ en question =""
puis tu fais ta requete delete
puis tu refais une requete
update ta_table set ton champ = ""where ton champ en question = 10000000000

c un pe tordu mais si ca pe t aider
0
blux Messages postés 26450 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 6 novembre 2024 3 312
3 janv. 2010 à 21:12
Salut,

as-tu regardé la fonction isnull ?

SELECT * FROM toto WHERE not isnull(champ1);
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
4 janv. 2010 à 18:55
Je viens de tester un delete * from ... where isnull(champ)

les champs egaux a 0 sont en effet pas pris en compte ta solution est en effet la
0