Вниз
Скачать: CL | DM;

Ограниченное число записей - вперемешку   Найти похожие ветки 

 
Дмитрий Баранов ©   (2002-06-06 15:55) [0]

Вот такая задача... Что-нить вроде select top 100, но чтобы при этом рекордсет всякий раз был разный (нужна статистическая достоверность случайности выборки). Как-нить это можно сделать на сервере?


 
Delirium ©   (2002-06-06 16:13) [1]

Знакомая таблица Test(id int, Pid int) : id - ключевое поле,
Pid - Каждый раз заполняется случайными значениями (с повторениями)

update test set Pid=null
while exists(select * from test where Pid is null)
update test set Pid=Convert(int,Round(Rand()*10000,0))
from (select top 1 id from test where Pid is null) tmp
where test.id=tmp.id
select * from test


 
Delirium ©   (2002-06-06 16:25) [2]

А вот пример без повторений

update test set Val=null
while exists(select * from test where Val is null)
update test set Val=Convert(char(16),Convert(varbinary,NewID()))
from (select top 1 id from test where Val is null) tmp
where test.id=tmp.id
select top 10 * from test order by val


 
Дмитрий Баранов ©   (2002-06-06 16:29) [3]

Ой спасиба!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.008 c
1-1010
Bura
2002-06-17 17:33
2002.07.01
Крыша едет...


14-1148
SPeller
2002-05-25 02:56
2002.07.01
Вопрос по сетям и Виндам


3-858
VictorT
2002-06-06 11:02
2002.07.01
Первичный ключ.


1-1079
Сергей 1
2002-06-19 10:13
2002.07.01
Проблемы с TDBEdit


1-1047
Frags
2002-06-18 13:38
2002.07.01
Где можно найти SpeedButton как в XP?




   Наверх