Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Рулетка на SQL / 7 сообщений из 7, страница 1 из 1
17.01.2014, 17:03:55
    #38529931
Кузнецов Владимир
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Рулетка на SQL
Можно ли на языке SQL выполнить следующую задачу:
bonus chance
bonus1 0.8
bonus2 0.2
Необходимо получить одну запись с учетом вероятности выпадения.
RAND() дает равную вероятность.
...
Рейтинг: 0 / 0
17.01.2014, 17:39:55
    #38529969
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Рулетка на SQL
См. FAQ по переменным. Суммируете chance до тех пор, пока не превысите RAND().
...
Рейтинг: 0 / 0
17.01.2014, 18:07:17
    #38530004
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Рулетка на SQL
Код: sql
1.
select if(rand()>0.2,bonus1,bonus2)
...
Рейтинг: 0 / 0
18.01.2014, 07:50:18
    #38530333
Кузнецов Владимир
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Рулетка на SQL
Код: sql
1.
select if(rand()>0.2,bonus1,bonus2)


Здесь шанс выбора записи 0.5 !
Я ничего не придумал умнее, чем создать временную таблицу и поместить в нее 8 записей bonus1 и 2 записи bonus2 . Вот тогда выборка
Код: sql
1.
select * from temp order by rand() limit 1

будет честной.
Но как быть если, напр., bonus1=0.789? Создавать 10000 записей?
...
Рейтинг: 0 / 0
18.01.2014, 08:54:42
    #38530348
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Рулетка на SQL
Кузнецов Владимир
Код: sql
1.
select if(rand()>0.2,bonus1,bonus2)



Здесь шанс выбора записи 0.5 !это почему же?
...
Рейтинг: 0 / 0
18.01.2014, 09:32:22
    #38530369
javajdbc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Рулетка на SQL
miksoft,

Ну это классика:

-- какова вероятность встретить на улице динозавра?
-- 50 на 50! или встретим, или нет!
...
Рейтинг: 0 / 0
20.01.2014, 06:46:30
    #38531353
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Рулетка на SQL
Кузнецов Владимир, читать первую цитату тут , после чего срочно учить тервер!
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Рулетка на SQL / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]