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 :

Inverser liste alphabétique


Sujet :

Requêtes et SQL.

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 253
    Par défaut Inverser liste alphabétique
    Bonsoir à tous

    Dans une colonne j’ai une liste de noms et prénoms avec le nom en premier.

    Comment faire pour afficher la liste avec le prénom en premier ?

    Merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Cette liste est quoi ?

    Une table ?
    Une zone de liste ?
    Un sous-formulaire ?

    Merci de donner des précisions quand vous posez une question.

    Philippe

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 253
    Par défaut
    Il s'agit d'une table (feuille de données)

  4. #4
    Invité
    Invité(e)
    Par défaut
    Re

    Il suffit de mettre la table en mode création et de remonter le champ prénom par un cliqué déplacé.

    Cela est expliqué dans tout bon livre de base sur Access.

    Philippe

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 253
    Par défaut
    Merci mais étant néophyte, j'ai saisi le nom et le prénom dans le même champ...

    Y a-t-il une solution quand même ?

  6. #6
    Invité
    Invité(e)
    Par défaut
    Re

    Cela change tout, d'où l'importance de donner des précisions lors du premier message pour éviter de perdre du temps.

    D'abord tu t'aperçois que c'est une erreur de conception (c'est comme cela que l'on apprend), on ne doit avoir qu'une donnée par champ.

    Il y a des possibilités, mais le hic c'est que souvent on a pas uniquement le nom et le prénom mais :

    un prénom composé sans trait d'union de séparation.
    un nom avec particule.

    En résumant s'il y a deux données pas de soucis, mais plus alors là , il y a de nombreuses questions sur le forum sur ce sujet.

    Donc merci de détailler comment se présentent tes données.

    Philippe

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 253
    Par défaut
    ok

    Heureusement il n'y a que 2 données et il n' y a pas de noms composés, de trait d'union ni de particule

  8. #8
    Invité
    Invité(e)
    Par défaut
    Re

    Voici un palliatif avec une requête de mise à jour qui va inverser les deux et devrait être de ce type avec LaTable et le Champ.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE LaTable SET LeChamp = Mid([LeChamp],InStr(1,[LeChamp]," ")) & " " & Left([LeChamp],InStr(1,[LeChamp]," "));
    Philippe

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 253
    Par défaut
    Grand merci Philippe mais...dois-je copier cette formule ?

  10. #10
    Invité
    Invité(e)
    Par défaut


    Ce n'est pas une formule, c'est une requête en SQL à adapter à ta table et ton champ.

    Philippe

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 253
    Par défaut
    ok Merci


    Bon j'ai un peu cherché et j'ai cru comprendre qu'il fallait saisir ce que tu m'as donné dans la fenêtre "requête 1" après SELECT;
    j'ai donc copié

    SELECT;UPDATE LaTable SET LeChamp = Mid([LeChamp],InStr(1,[LeChamp]," ")) & " " & Left([LeChamp],InStr(1,[LeChamp]," "));

    mais j'ai une alerte d'erreur de syntaxe

    est-ce que j'ai mal collé ce que tu m'as donné après SELECT; (faut-il un espace ou autre chose ? ) ou bien y a -t-il un erreur dans ta séquence ?

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 253
    Par défaut
    SELECT; UPDATE LaTable SET LeChamp = Mid([LeChamp],InStr(1,[LeChamp]," ")) & " " & Left([LeChamp],InStr(1,[LeChamp]," "));

    J'ai mis en couleur rouge le vrai nom de la table et en bleu celui du champ

    Peux-tu me dire si je n'ai pas fait d'erreur ?

  13. #13
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Il n'y a pas de SELECT, la requête commence à Update.

    Penses à utiliser les balises codes http://club.developpez.com/regles/#L3.5

    Philippe

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 253
    Par défaut
    Merci Philippe

    j'ai donc ceci :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE Jazz Table1 SET instrument = Mid([instrument],InStr(1,[ instrument]," ")) & " " & Left([instrument],InStr(1,[ instrument]," "));

    Mais j’ai le message d’alerte suivant :

    « instruction SQL non valide ; ‘DELETE’,‘INSERT’,‘PROCEDURE’,‘SELECT’ ou ‘UPDATE’ attendus”

    Où se trouve l'erreur ?

  15. #15
    Invité
    Invité(e)
    Par défaut
    Re

    Quel est le nom de ta table ? Jazz ou Table 1 il y en a un de trop, non ?

    Philippe

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 253
    Par défaut
    le nom qui apparaît dans Tables est "Jazz Table1"

    j'ai essayé "Jazz" seul et "Table1" seul mais idem...

  17. #17
    Invité
    Invité(e)
    Par défaut
    Re

    jamais d'espace entre les noms , mais celui-ci entre crochets.

    Philippe

  18. #18
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 253
    Par défaut
    jamais d'espace entre les noms
    sans doute évoques-tu "Jazz Table1" et l'espace entre Jazz et Table1...

    J'ai donc essayé >> "JazzTable1" >> idem...

    mais celui-ci entre crochets.
    J'ai donc aussi essayé "[JazzTable1]">>idem

  19. #19
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 253
    Par défaut erreur de syntaxe sur ligne de code SQL ?
    Bonsoir à tous

    J’ai cette ligne de code SQL pour inverser nom et prénom saisis sur le même champ dans une base :


    UPDATE Jazz Table1 SET instrument = Mid([instrument],InStr(1,[ instrument]," ")) & " " & LEFT([instrument],InStr(1,[ instrument]," "));

    >>"Jazz Table1" est le nom de la table et "instrument" le nom du champ

    Mais j’ai le message d’alerte suivant :

    « instruction SQL non valide ; ‘DELETE’,‘INSERT’,‘PROCEDURE’,‘SELECT’ ou ‘UPDATE’ attendus”

    Est-ce que quelqu’un pourrait me conseiller et me dire où se trouve l’erreur ?

    Merci

  20. #20
    Expert confirmé
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Par défaut
    Bonsoir,

    Comme le nom de la table contient un espace, il faut le mettre entre crochets droits.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE [Jazz Table1] SET ...etc... ;
    A+

Discussions similaires

  1. Listeview/Grid view avec liste alphabétique à la Iphone
    Par Yannick Biet dans le forum Windows Presentation Foundation
    Réponses: 1
    Dernier message: 19/12/2010, 12h04
  2. Réponses: 22
    Dernier message: 23/07/2010, 10h25
  3. Inversion listes et sous-listes
    Par yoshï dans le forum Prolog
    Réponses: 6
    Dernier message: 25/11/2007, 18h42
  4. inverse liste chainée
    Par Ucom-C++ dans le forum C
    Réponses: 6
    Dernier message: 08/06/2007, 23h03
  5. [MySQL] Une liste déroulante affichant les données d'une requête SHOW par ordre alphabétique
    Par jack_1981 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 22/12/2005, 15h53

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