IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

Affichage des lignes d'une table si AU MOINS Champ est NON VIDE


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Homme Profil pro
    Médecin Département d'Information Médicale (DIM)
    Inscrit en
    Janvier 2009
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Médecin Département d'Information Médicale (DIM)
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2009
    Messages : 115
    Points : 60
    Points
    60
    Par défaut Affichage des lignes d'une table si AU MOINS Champ est NON VIDE
    Bonjour,


    Je veux faire une requete selectionnant certaines colonnes d'une grosse table qui n'affichera que les lignes dont AU MOINS (et n'importe lequel) Champ est NON VIDE.

    Cela est différent de proposer colonne "x" not null or colonne "y" not null or etc... qui n'affichera que les lignes où le champ de la colonne "x" spécifiquement est non vide puis cherche à remplir une fois cette condition validée les autres conditions. En clair je perds les colonnes où le champ de la colonne "x" est vide alors que celui de la colonne "n" ne l'est pas

    Ce que je veux, c'est n'importe quelle ligne dont au moins un champ est non vide, en effet, le fait de scinder ma table via cette requête implique que pour un ID donné, tous les champs peuvent être vides alors que dans la table initiale qui avait plus de colonnes, il y avait toujours au moins un champ non vide.

    Un schéma: (ou en pièce jointe)

    Table initiale
    ..........A B C D
    ID_1.........1
    ID_2.........1 5
    ID_3....1
    ID_4....1 1 1 1

    Je veux afficher les colonnes B et C uniquement dans ma requête et donc ne voir apparaitre que dans cet exemple que les lignes ID_1, ID_2 et ID_4 puisque la Ligne ID_3 a des champs vides en colonne B et en Colonne C

    ...........B C
    ID_1.....1
    ID_2.....1 5
    ID_4.....1 1


    Comment faire?

    Merci (j'espère que je ne suis pas trop confus?)
    Fichiers attachés Fichiers attachés

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Salut,
    si ton problème n'est pas plus complexe par la suite essaie ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT [ta_table]![ID], [ta_table]![B],[ta_table]![C]
    FROM [ta_table]
    WHERE (([ta_table]![B] Is Not Null) OR ([ta_table]![C] Is Not Null));
    Bonne journée.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 944
    Points : 1 282
    Points
    1 282
    Par défaut
    Bonjour
    Une solution 'Bricolo'. (Si j'ai tout compris)
    Créer un champ qui est le résultat de la concaténation de l'ensemble des champs. Si il n'est pas null, c'est que au mois un des champs était rempli.

  4. #4
    Membre du Club
    Homme Profil pro
    Médecin Département d'Information Médicale (DIM)
    Inscrit en
    Janvier 2009
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Médecin Département d'Information Médicale (DIM)
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2009
    Messages : 115
    Points : 60
    Points
    60
    Par défaut
    Merci,

    C'est ce que j'avais fait et cela ne marchait pas plus avec ta requête; mais j'ai trouvé, la requête est juste, c'est un problème de parenthèses omise.

    Merci beaucoup.

    SELECT [ta_table]![ID], [ta_table]![b],[ta_table]![C]
    FROM [ta_table]
    WHERE ((([ta_table]![b]) Is Not Null)) OR ((([ta_table]![C]) Is Not Null));

  5. #5
    Membre du Club
    Homme Profil pro
    Médecin Département d'Information Médicale (DIM)
    Inscrit en
    Janvier 2009
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Médecin Département d'Information Médicale (DIM)
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2009
    Messages : 115
    Points : 60
    Points
    60
    Par défaut
    Savez-vous de combien est la limitation dans Access 2007 du nombre "OR" dans la configuration précédente.

    Je n'arrive pas à en mettre plus de 14.

  6. #6
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Bonjour une piste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT *
    FROM Table1
    WHERE C1 & C2 & C3 & C4 IS NOT NULL

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ordre d'affichage des lignes d'une table
    Par laurentSc dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 21/09/2011, 23h05
  2. Réponses: 14
    Dernier message: 22/09/2005, 16h49
  3. Ajout/Suppression dynamique des lignes dans une table
    Par codexomega dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 13/08/2005, 18h50
  4. Copier des lignes d'une table
    Par thomas_strass dans le forum Décisions SGBD
    Réponses: 7
    Dernier message: 01/07/2005, 15h42
  5. Réponses: 4
    Dernier message: 31/05/2004, 12h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo