Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/07/2007, 22h30   #1
Nouveau Membre du Club
 
Inscription : novembre 2005
Messages : 317
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 317
Points : 35
Points : 35
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 :
1
2
3
sql2 = "SELECT * FROM events WHERE voyant='" & rs("client") & "'"
(et celui qui a le prix le plus faible)
Merci d'avance,

Denis
delavega est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2007, 00h30   #2
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Salut,

Tri croissant :
Code asp :
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 :
1
2
3
<%
sql2 = "SELECT * FROM events WHERE voyant='" & rs("client") & " order by Monchamp DESC "'"
%>

++
__________________
Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

FAQ ASP
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2007, 11h56   #3
Nouveau Membre du Club
 
Inscription : novembre 2005
Messages : 317
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 317
Points : 35
Points : 35
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
delavega est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2007, 12h15   #4
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 364
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 364
Points : 1 551
Points : 1 551
Bonjour

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

Code :
select min(monchamps) FROM events WHERE voyant='" & rs("client")  & "'"
(a verifier selon le sgbdr, ca c'est pour access)
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2007, 20h59   #5
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Tu peux faire ceci aussi qui te donnera à 100% la valeur la plus petite de ton champ

Code asp :
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.
__________________
Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

FAQ ASP
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2007, 10h09   #6
Membre éclairé
 
Inscription : décembre 2006
Messages : 480
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2006
Messages : 480
Points : 303
Points : 303
Envoyer un message via MSN à The eye
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
The eye est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2007, 11h39   #7
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 364
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 364
Points : 1 551
Points : 1 551
Citation:
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
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2007, 12h04   #8
Membre éclairé
 
Inscription : décembre 2006
Messages : 480
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2006
Messages : 480
Points : 303
Points : 303
Envoyer un message via MSN à The eye
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
The eye est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2007, 14h20   #9
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 364
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 364
Points : 1 551
Points : 1 551
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
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h33.


 
 
 
 
Partenaires

Hébergement Web