Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2
  1. #1
    Membre habitué
    Inscrit en
    octobre 2007
    Messages
    396
    Détails du profil
    Informations forums :
    Inscription : octobre 2007
    Messages : 396
    Points : 112
    Points
    112

    Par défaut Problème ordre SELECT simple

    Bonjour,

    Dans ma base de données PostgreSQL, j'ai une table avec la structure suivante:

    TABLE_NAME
    value text,
    label text,
    description text
    J'ai inséré les 3 lignes suivantes dans la table:


    Code sql :
    1
    2
    3
    INSERT INTO table_to_delete (value, label, description) VALUES ('-1', 'a', '');
    INSERT INTO table_to_delete (value, label, description) VALUES ('0', 'b', 'desc b');
    INSERT INTO table_to_delete (value, label, description) VALUES ('1', 'c', 'desc c');


    Lorsque je fais un SELECT simple pour tout obtenir il me montre correctement le résultat:

    VALUE LABEL DESCRIPTION
    -1 a
    0 b desc b
    1 c desc c
    Après avoir fait un update de la ligne avec le label 'b',


    Code sql :
    UPDATE table_to_delete SET label = 'b b' WHERE label = 'b';


    Le résultat du même SELECT est différent (la ligne que j'ai mis à jour apparait à la fin):

    VALUE LABEL DESCRIPTION
    -1 a
    1 c desc c
    0 b b desc b

    Pourquoi se passe-t-il? je n'ai mis aucun ORDER BY dans ma requête, donc je suppose que le moteur de la BD fasse un ORDER BY quelconque automatiquement.... lequel?

    comment faire pour faire en sorte que le résultat de la requête soit toujours le même lorsque je fais des update, mais sans modifier la structure de la table (sans ajouter de colonne)? (c'est une table d'une BD "héritée" que je ne peux pas modifier...)

    Merci

  2. #2
    Membre actif
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    mai 2009
    Messages
    419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : mai 2009
    Messages : 419
    Points : 181
    Points
    181

    Par défaut

    Bonjour,

    faits un order by id desc ou ASC:
    Code :
    1
    2
    3
    4
     
    select *
    from table
    order by id;

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •