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

ASP Discussion :

Tri dans base de données SQL


Sujet :

ASP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 352
    Points : 70
    Points
    70
    Par défaut Tri dans base de données SQL
    Bonsoir tout le monde,

    Qui pourrait me donner la requête SQL qui me permet d'effectuer un tri dans une base de données ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sql2 = "SELECT * FROM events WHERE voyant='" & rs("client") & "'"
    (et celui qui a le prix le plus faible)
    Merci d'avance,

    Denis

  2. #2
    Membre expérimenté
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Points : 1 350
    Points
    1 350
    Par défaut
    Salut,

    Tri croissant :
    Code asp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <%
    sql2 = "SELECT * FROM events WHERE voyant='" & rs("client") & " order by Monchamp ASC "'"
    %>

    Note : ASC est par défaut lors d'un tri

    Tri décroissant (répond à ta question) :
    Code asp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <%
    sql2 = "SELECT * FROM events WHERE voyant='" & rs("client") & " order by Monchamp DESC "'"
    %>

    ++

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 352
    Points : 70
    Points
    70
    Par défaut
    Merci pour ta réponse, mais j'ai mal expliqué ce que je souhaite.

    J'aimerai en fait un tri, sur un champs, qui me ressort LA valeur la plus basse du champs, mais uniquement la plus basse. Pas les autres.

    Merci

  4. #4
    Modérateur
    Avatar de roro06
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    1 480
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 480
    Points : 1 978
    Points
    1 978
    Par défaut
    Bonjour

    Ce n'est plus un tri, alors ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select min(monchamps) FROM events WHERE voyant='" & rs("client")  & "'"
    (a verifier selon le sgbdr, ca c'est pour access)

  5. #5
    Membre expérimenté
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Points : 1 350
    Points
    1 350
    Par défaut
    Tu peux faire ceci aussi qui te donnera à 100% la valeur la plus petite de ton champ

    Code asp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <% 
    sql2 = "SELECT TOP 1 Prix,* FROM events WHERE voyant='" & rs("client") & " order by Prix ASC" 
    %>

    Explication Top 1 ne te renvoie qu'une seule valeur et en même temps on fait un tri croissant donc du plus petit au plus grand De ce fait tu auras forcement la valeur la plus petit de ton champ en retour.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 480
    Points : 357
    Points
    357
    Par défaut
    Choisis plutôt la technique du modo, en effet le MIN est plus long à executer et si tu as une grosse table (plusieurs centaines de milliers d'enregistrements) la différence d'execution entre ces deux requêtes devient sensiblement perceptible.

    Cela est encore plus vrai si tu as un champ de type non numerique

  7. #7
    Modérateur
    Avatar de roro06
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    1 480
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 480
    Points : 1 978
    Points
    1 978
    Par défaut
    MIN est plus long à executer et si tu as une grosse table (plusieurs centaines de milliers d'enregistrements) la différence d'execution entre ces deux requêtes devient sensiblement perceptible.
    Marrant, je viens de faire le test, c'est l'inverse. (sous access, 900 000 enregistrements, test sur champs indexés et non-indexés, type numérique, la différence de temps allant du simple au quadruple)

    ca serait interressant de voir sur d'autres sgbd

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 480
    Points : 357
    Points
    357
    Par défaut
    Ma remarque a été testé sur champs indexés numériques et sous SQLServer 2003....

    Marrant qu'access réagisse différemment

    A mon avis ma remarque doit être soumise à d'autres paramètres qui m'échappe

  9. #9
    Modérateur
    Avatar de roro06
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    1 480
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 480
    Points : 1 978
    Points
    1 978
    Par défaut
    Je ne connaissais pas top, maintenant, je connais.

    Maintenant, je me le note pour le jour ou je migrerais sur SQL server, ça peut servir.

    moralité, c'est toujours bon d'avoir plusieurs avis differents

Discussions similaires

  1. Stockage des fichier Dans base de donnée sql
    Par Meryjean dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 29/08/2010, 12h23
  2. récupérer valeur dans base de donnée SQL
    Par Ullrik dans le forum ASP.NET
    Réponses: 4
    Dernier message: 07/05/2010, 08h23
  3. Type Float dans base de données SQL SERVER
    Par BYALI dans le forum Bases de données
    Réponses: 4
    Dernier message: 26/03/2008, 11h05
  4. Réponses: 1
    Dernier message: 30/08/2007, 19h19
  5. Pbm : Connexion base de donnée SQL 2005 dans Visual Studio C#
    Par vampyrx dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 27/05/2006, 20h55

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