Je dois extraire une ligne aléatoire d'un ensemble de lignes dans ma base de données SQL Server.Ligne aléatoire Microsoft SQL Server
Ceci est la requête que je dirige actuellement:
SELECT TOP 1 *
FROM
(SELECT * FROM Flowers WHERE Color = 'Red') a
ORDER BY NEWID()
Pour autant que je comprends, cela devrait aller chercher toutes les fleurs avec la couleur rouge. Et puis de l'un d'eux sélectionnez une fleur aléatoire. Mais il me semble qu'il ne sélectionne que d'un assez faible nombre d'entrées, car je vois souvent le même couple de fleurs. Maintenant, je me demande si ma requête ne fonctionne pas aussi bien que je le pensais, est-ce que quelqu'un voit un problème avec elle?
Eh bien, combien de lignes fait le SELECT 'FROM Flowers WHERE Color = "Red" 'return ?. (En outre, vous devriez utiliser 'WHERE Color = 'Red'', avec des guillemets simples) – Lamak
Voici un bon lien sur la sélection de lignes aléatoires en sql - http://www.petefreitag.com/item/466.cfm –
Comment beaucoup de fleurs rouges sont là et à quelle fréquence voyez-vous des doublons? Vous devez vraiment faire une analyse statistique pour déterminer le caractère aléatoire des résultats. – AaronLS