MSSQL: SelectTop10*من [الجدول] orderbynewid ()
وصول:
نسخة الكود كما يلي:
لاستخدام Rs.Mov
إذا كنت تأخذ 10 عناصر عشوائية
ن = 10
أولاً ، نحتاج إلى تحديد ما إذا كان إجمالي عدد السجلات أقل من 10. إذا كان أقل من 10 ، فكم من هناك
ديمرينوم
fori = 1ton
عشوائي ()
Rannum = int (Rs.RecordCount*rnd) +1 'يولد رقمًا عشوائيًا
Rs.Moverannum 'نقل المؤشر إلى موضع الرقم العشوائي
Response.writei & "-" & rs ("title") و "<br/>" "محتوى الإخراج
Rs.Move-Rannum
التالي
'...
هذا يكفي. بالطبع ، من الممكن الحصول على سجلات مكررة بهذه الطريقة. ثم قم بتغيير الجملة لإنشاء أرقام عشوائية ، وأعلن متغيرًا لتخزين الأرقام العشوائية التي تم إنشاؤها ، وحدد أولاً ما إذا كان قد تم إنشاؤه عند إنشاء عشوائيات جديدة. إذا تم إنشاؤه ، فسيتم تجديده. هذا بسيط نسبيًا ، يمكنك القيام بذلك باستخدام Instr ، إلخ. ~
هذه هي الفكرة ، جرب الآخرين بنفسك. هناك طريقة أخرى لعدم القراءة مرارًا وتكرارًا وهي إنشاء رقم عشوائي واحد فقط ثم قراءة سجلات n بعد الرقم العشوائي. بالطبع ، يجب عليك أيضًا كتابة حكم جيد. يجب أن يكون الرقم العشوائي أصغر من إجمالي عدد السجلات - يجب قراءة عدد السجلات.
نسخة الكود كما يلي:
'...
ديمين ، رانوم
ن = 10
عشوائي ()
rannum = rs.recordcount-n
ifrannum <1thenrannum = 1
rannum = int (rannum*rnd) +1
Rs.Moverannum
fori = 1to10
Response.writei & "-" & rs ("title") و "<br/>" "محتوى الإخراج
Rs.Movenext 'اقرأ بجانبها
التالي
'...
يوصى بكتابة وظيفة بسيطة لإنشاء وحكم الأرقام العشوائية دون تكرارها.