Designed by Derf !
78 en ligne   Boutique | Sites | Bar | Forum | PhpBB | Actu | Glossaire | Codes | Tips | Liens | Livres | Lettre  


 Recherche

 NewsLetter





   

SQL & ASP - faire une requête aléatoire

Comment faire une requête aléatoire





Plusieurs fois, il m'a été demandé sur des forums comment faire une requête qui retourne des enregistrements aléatoires. Dans les lignes qui suivront, nous tenterons d'y voir un peu plus clair. Après quelques recherches sur le web, j'ai pu trouver des exemples pour SQL-Server et MySQL seulement.



La façon proposée sous SQL Server est la suivante :
select * from TABLE order by newid()

La façon proposée sous MySQL est la suivante :
Select * From TABLE Order By RAND()


Mais qu'en est-il des autres SGBD ?

J'ai développé une code qui permet la pige aléatoire d'un enregistrement dans un jeu d'enregistrements (recordset).

Voici le code en question :

<%
' Définition du connection string
' le fichier "adovbs.inc" contient les constantes ADO
%>

<!-- #include file="Include/Connection.asp" -->
<!-- #include file="Include/adovbs.inc" -->
<% 

    Dim SQL, rs, MyConn
    Dim NbRecord, Pos
    
    
    
    ' Définition de la requête SQL
    SQL = "Select * From SousListe" 

    ' Instance de la connection et du recordset
    set MyConn = Server.CreateObject("adodb.connection")
    Set Rs = Server.CreateObject("Adodb.recordset")
    
    ' Ouverture de la base
    'Note : ConnectionString votre connection a votre BD
    MyConn.Open ConnectionString
    
    ' Ouverture du recordset
    Rs.Open Sql, MyConn , adOpenStatic, adLockPessimistic
    
    ' Requete vide ?
    If Not Rs.EOF Then 
        ' Se positionner au dernier record
        Rs.MoveLast 
        ' Se positionner au premier record
        Rs.MoveFirst 
        ' Saisir le nombre de record
        NbRecord = Rs.RecordCount 

        ' Initialize random-number generator. 
        Randomize
        
        ' Définir la position a atteindre
        Pos = Int((NbRecord * Rnd)) 
        ' Se positionner au record aléatoire
        Rs.Move (Pos) 
        
        ' Afficher le champ2
        Response.Write rs("Nom")
    End If 

' Fermeture du recordset
Rs.Close 

' Fermeture de la connection
MyConn.Close

' Destruction des instances
Set MyConn = Nothing
Set rs = Nothing

%>


Pour pouvoir écrire dans ce forum, identifiez-vous !

  v1.3p © ASP-PHP.net 2002  

alakazoo le 26/11/2002 (37 876 hits)
Didier Réservez votre place gratuite pour les Microsoft TechDays 2009 !!!
Un serveur dédié Dedibox avec la licence Windows Server 2008 gratuite !!!

MSDN fête ses 10 ans ! Gagnez 1 Nabaztag, 1 montre binaire, 1 console Xbox, 1 ordinateur ultra-portable EeePC, 1 HTC Diamond et bien d’autres cadeaux… !!!
Au fil des news  
[MAJ] [PHP] Un calendrier très complet -
Remplacement de balises pour le PHP5 et modifications du script pour l'affichage des jours afin ...
Magazines - Le n°113 de Programmez est disponible
PHP - Compteur de visites (hit) paramétrable
Amélioration du Search MOSS : Recherche avancée - Modification de la page de recherche avancée
Dans la série des optimisations potentielles sur le moteur de recherche de MOSS, nous verrons cette ...
Dreamweaver CS3 + Php + Mysql - Ajout-Modif-Suppression. Les fondamentaux Part-1
Suite à de nombreuses questions sur le forum, je pense que ce sujet sur les comportements d'ajout, ...
SharePoint et Silverlight - Premiers pas - Lecture de données SharePoint et intégration
Silverlight et SharePoint sont deux technologies récentes et connaissant un essor significant. En ...
Développement d'applications SharePoint - depuis une Workstation XP ou Vista
Lorsque que l'on développe pour SharePoint, on se retrouve dans un dilemme auquel nous avons tous ...
JavaScript - sudoky - jeux du sudoku en javascript
Adobe - Creative Suite 4 en Français
PHP - La 8ème édition du Forum PHP est lancée !
Magazines - Le n°112 de Programmez est disponible
PHP - Interpreteur de commande SQL en PHP
Listes liées (dépendantes) : avec ou sans XMLHTTPR - Les délires «Ajax or not Ajax»
Comme toujours, c'est à la suite d'un coup de pouce que je me suis décidé à faire ce tuto. Merci à ...
Amélioration du Search MOSS : Les scopes - Quelques possibilités d'amélioration du Search
Lorsqu'on installe le moteur de recherche de MOSS et qu'on le configure basiquement, on veut ...
SharePoint - Lister les templates utilisés - Identifier les définitions utilisées par vos sites
Un site SharePoint est créé à partir d'un modèle ou définition de site. Mais comment savoir après ...
PowerShell - Profile avec la participation de mon ami Tigrou :)
Adobe - Lancement de la CS4, tous à vos agendas !
[MAJ] PHP - Fonctions de redimensionnement d'images - BD : redimensionner image + picto après upload
Ajout de FONCTIONS de redimensionnement.
PHP - Afficher une date mysql yyyy-mm-dd en dd-mm-yyyy
PHP - Tchat PHP V2.1 sans base de donnée
SharePoint et les statistiques d'utilisation - Comment obtenir des statistiques depuis SharePoint
La mise en place de ferme SharePoint doit s'accompagner d'une notion de gouvernance. Cette notion ...
Adobe - Nouvelles annonces Adobe sur le salon IBC 2008
PHP - PHP TV emission 2 (septembre 2008)
PHP - PDO ADMIN
[MAJ] Inscription contrôlée à une NewsLetter ou Service - Abonnement avec confirmation et désabonnement
Correction d'un point-virgule manquant (merci de m'avoir obligé à chercher JPierre) dans le module ...
PHP - Premier lundi d'une semaine et d'une année
JavaScript - Premier lundi d'une semaine et d'une année
ASP - Premier lundi d'une semaine et d'une année
Alphabet Radio et Code Morse - Alpha Zulu appelle Tango Charlie !
Encoder-Décoder en "Alphabet Radio" ... "Alpha Zulu appelle Tango Charlie !" ou en Code Morse ... ...
Filtrer les modèles de site SharePoint - Filtrer l'affichage des modèles de site SharePoint
Je vous propose de découvrir à l'aide de cet article quels mécanismes peuvent vous permettent de ...
ASP/PHP - Méthode de cryptage - par table de correspondance
(ASP/PHP) Une méthode de cryptage de données par l'utilisation d'une "table de correspondance ...
PHP - Listes liées (1 table) - version2
JavaScript - Rendre Visible ou Invisible des éléments d'un form
PHP - Listes liées (1 table) - version1
JavaScript - Intercepter le click sur vidéo WMP ou flash SWF
Jeux de l'été (et de 5) - Un jeu de Motus (mots de 8 lettres)
C'est reparti pour un tour... Comme je venais de proposer un jeu de Mastermind, je me suis dit que, ...
PowerShell - Extraire toutes les collections SharePoint en CSV
PowerShell - Lister les collections pour une WebApp SharePoint
PowerShell - Lister les utilisateurs d'un site SharePoint
PowerShell - Connaître le code version de votre SharePoint
Tutorial : HTML | Scripting | ASP-PHP | ASP.net | SQL Server | XML
Sharepoint | XAML | Pocket | Dreamweaver | VML | Divers
  Scripts : Scripting | ASP-PHP | ASP.net | Divers
  Boutique | Annuaire | Bannières | Météo | Tribune | Partenariats
v3 © Didier 2003   
 

Corpo Sciences de Reims Partitions gratuites Carte, météo, annonces
 ASP-magazine Groupes Utilisateurs Microsoft TechNet MVP El Roubio Codes Sources CodePPC Wygwam The Inquirer FR DotNet Project