C# Veritabanındaki Veriyi Rastgele Sıralamak
-
Merhabalar, C# ta veritabanından çektiğim bir veriyi mesela bir okuldaki sınıfların öğrenci listesi onu rastgele sıralayıp yeni sınıflar oluşturmak istiyorum bunu nasıl yapabilirim sizce aklıma rastgele sayı üretip bütün değerlere atamak geldide birde sizlere sorayım dedim.Şimdiden teşekkürler.
-
http://stackoverflow.com/questions/273313/randomize-a-listt-in-c-sharp
Buraya bir bak istersen.
-
baktımda pek birşey anlamadım ya
-
Yani şu aşağıdaki metodu classının içine kopyala:
public static void Shuffle<T>(this IList<T> list) { Random rng = new Random(); int n = list.Count; while (n > 1) { n--; int k = rng.Next(n + 1); T value = list[k]; list[k] = list[n]; list[n] = value; } }Kullanmak için de örneğin:
List<Ogrenci> ogrenciler = GetOgrenciler(); // database'den ogrencileri çekip sana veren metod olabilir ogrenciler.Shuffle();
Dedikten sonra ogrenciler listesi karışmıştır.
her ogrenciler.Shuffle(); çağırışında ogrenciler listesindeki elemanların yeri farklı olacaktır. (Eğer yanlış anlamadıysam..)
-
order by rand() yaparak sqlde bitirebilirsin
-
db yapın ne sql server mi?
mysqlmi
accessmi
eğer sql se şunu kullan :
;with RandomSirala as (select NewId() as RNDM,* from Members) select * from RandomSirala order by RNDM
-
sql querynin sonuna order by newid() eklemen yeterli.
