MDB dosyasından rastgele veri çekebilirmiyim?
17
●1.696
- 20-04-2009, 01:21:28Alabilirsin örnekteki gibi,
<% Const adCmdText = &H0001 sql = "SELECT RANDOMDATA FROM RANDOMTABLE" rs.Open sql, connstr , 3, , adCmdText Randomize Timer intRnd = (Int(RND * rs.RecordCount)) rs.Move intRnd Response.Write "<b>" & rs("RANDOMDATA ") & "</b>" %> - 20-04-2009, 01:22:13MDB'de limit 0,1 var mı? Bilgim yok bu konuda.OfisSoft adlı üyeden alıntı: mesajı görüntüle
- 20-04-2009, 01:27:49Üyeliği durdurulduSql, bilgi bloklarını sorgulamak için tasarlanmış bir dildir; rastgele bilgi çeksin diye değil. SQL cümlesi içinde RAND fonksiyonu kullanmak gereksiz.
https://www.r10.net/asp-hazir-kodlar/...eri-cekme.html
http://www.asprehberi.net/icerik/2164.html
http://baybul.com/asp/46022-asp-rasg...ri-cekmek.html - 20-04-2009, 01:37:31Bilgi bloklarını sorgulamak için tasarlanmıştır ama rastgele bir resim seçmek için mecburen random bilgi çekilmesi gerekmektedir. Birçok kişide kullanmaktadır. Baktığım kadarıyla da mdb'de limit 1 yok, mssql'deki gibi top var. Aşağıdaki sql'ide deniyebilirsin.obidergi adlı üyeden alıntı: mesajı görüntüle
sql="SELECT top 1 ID,RANDOMDATA FROM RANDOMTABLE ORDER BY rnd(ID), RANDOMDATA" - 20-04-2009, 01:45:21Performans olarak muhakak öyledir. Performansı düşüreceği kesindir. 80.575.646 kayıt arasında rand ile rastgele bir verinin getirme süresi mssql'de 36 saniyedir. Madem konumuz performansa geldi. Birazdan güzel bir kod yazıp koyuyorum buraya. 5 dakika müsade.obidergi adlı üyeden alıntı: mesajı görüntüle
- 20-04-2009, 02:02:16
sql = "SELECT rows AS TABLECOUNT FROM sysindexes WHERE id = OBJECT_ID('TABLENAME') AND indid < 2" rs.open sql,conn SQLCount = rs("TABLECOUNT ") Response.Write ("Toplam Kayıt : " & SQLCount &"<br>") rs.close Randomize Timer intRnd = (Int(RND * SQLCount)) sql = "SELECT * FROM TABLENAME WHERE PK ="&intRnd rs.open sql,conn
Buyrun...
Buyrun...