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

MySQL Discussion :

Retirer le tri automatique d'une table


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 15
    Par défaut Retirer le tri automatique d'une table
    Bonjour à tous et toutes,

    Voila j'aimerai (si cela est possible) trouver un moyen pour que mysql arrete de trier ma table automatiquement par ordre croissant et alphabétique.
    Je voudrais en fait que le tri se fasse dans l'ordre d'entrée des données dans ma base.

    Y'a t'il une option a cocher ou autre ? (j'ai chercher sans succès pour le cas d'une option )

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 062
    Par défaut
    Bonjour,

    Une partie de la réponse se trouve dans la FAQ.
    Il vous faut créer un champ enregistrant la date de création des données en question dans la base, puis trier selon ce champ.

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 15
    Par défaut
    premièrement merci pour la réponse rapide.

    Par contre (oui il y'a toujours un "mais" ^^), je suis d'accord pour le tri sur l'id (qui dans mon cas est 1, 2, 3 .....) donc que ces clé se suivent mais comme j'ai une table avec deux clé primaire, je voudrai que ce soit juste a partir de mon 3ème champ que ce soit non trié. (Je sais pas si je suis assez clair sur les explication, c'est peut etre un peu brouillon).

    Mais dans le cas que tu m'a donner, les "trou" lorsqu'un tuple est enlevé seront remplit par de nouvelles entrée, mais ca je ne veut pas:.

  4. #4
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 290
    Par défaut
    Je vais le redire plus fort : L'ORDRE DES LIGNES DANS LA TABLE N'A PAS D'IMPORTANCE. Seul l'ordre des lignes dans une requête compte, et il se règle avec la clause ORDER BY.

  5. #5
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 062
    Par défaut
    En fait, le lien que j'ai donné est là pour l'explication (ça m'évite d'avoir à retaper toute l'histoire du sac de billes ).
    Bref, si tu veux trier par date de création, il te faut un champ qui enregistre la date de création...

    En revanche, je n'ai pas compris l'histoire du 3ème champ non trié .
    Un petit exemple de ce que tu as dans ta table et de ce que tu souhaites obtenir en sortie de requête ?

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 15
    Par défaut
    Voici un exemple dans ma table : (num_cde et nom_ligne sont clé primaire)



    Prenons l'enregistrement numéro 147 :
    L'ordre d'entrée des données dans la table sont :
    1) pack
    2) nom_Option1
    3) Prix total
    4) prix par mois

    Seulement la il ne les classe que par ordre alphabétique.
    Ces données sont issues d'un formulaire dont je prend le nom et la values des différents $_POST de celui ci.
    Ce que je voudrais afficher (plusieurs pages plus loin) c'est un récapitulatif, dans l'ordre des choix. donc dans l'ordre d'entrée dans la base de données.

    Avec cette requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $sql='SELECT nom_ligne,libelle FROM ligne_commande WHERE nom_ligne <> "prix" AND num_cde="'.$num_fact.'";';
    	$result=fh_mysql_query($sql);
    	while($row = mysqli_fetch_row($result)){
    		$s.="<b>".$row[0].'</b>  :  '.$row[1].'<br>';
    	}

  7. #7
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 062
    Par défaut
    "L'enseignement, c'est l'art de la répétition"...
    On recommence donc...

    Si tu veux retrouver l'ordre dans lequel les données ont été insérées en base, tu dois ajouter une colonne auto-incrémentée ou datant l'insertion sur chaque ligne, puis faire une requête ordonnant selon cette colonne (avec le ORDER BY).
    Tu n'as pas d'autre solution...

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

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

Discussions similaires

  1. Désactiver le tri automatique dans une table paradox
    Par souminet dans le forum Débuter
    Réponses: 1
    Dernier message: 30/12/2008, 15h04
  2. Réponses: 2
    Dernier message: 07/06/2007, 14h22
  3. Tri simple d'une table
    Par Raphou96 dans le forum Access
    Réponses: 10
    Dernier message: 25/01/2007, 14h13
  4. recherche automatique dans une table
    Par jesuisjosita dans le forum Access
    Réponses: 3
    Dernier message: 15/01/2007, 11h44
  5. Mise à jour automatique d'une table access via un .xls
    Par infratunes dans le forum Access
    Réponses: 4
    Dernier message: 05/04/2006, 18h33

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