![]() |
Модераторы: skyboy |
![]() ![]() ![]() |
|
STIM |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 12.2.2012 Репутация: нет Всего: нет |
Здравствуйте! Есть следующая задача: есть таблица с доступными ставками и результатом, есть таблица с совершенными ставками, есть таблица с данными игроков.
Сначала устанавливаем в первую таблицу значение получившегося результата у какой-то определенной ставки, затем при нажатии кнопки "Рассчитать" должен выполниться запрос, в котором необходимо найти в таблице совершенных ставок тех кто поставил на данную ставку(player_number), посмотреть совпадает ли результат (bet_type) на который они поставили ставку с получившимся результатом, для тех игроков у кого совпадает необходимо взять из все той же таблицы совершенных ставок размер ставки (stake) , затем умножить на коэффициент (coeff) указанный в этой же строке, и прибавить к полю balance таблицы "Players". Я думаю такой запрос нужен: UPDATE players SET balance = balance + (select coeff * stake from perfect_bet where bet_type=? and id = ?) WHERE player_number = (SELECT player_number from perfect_bet where bet_type=? and id = ?), где стоят вопросы там данные задаются приложением (делаю запрос из под приложения написанного на java). Как правильно составить запрос? Коды таблиц:
Это сообщение отредактировал(а) STIM - 4.4.2012, 18:56 |
||||||
|
|||||||
Zloxa |
|
|||
![]() Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 53 Всего: 161 |
![]() -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка ![]() |
|||
|
||||
STIM |
|
||||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 12.2.2012 Репутация: нет Всего: нет |
Понятно же, что я хотел что бы вы проверили мой запрос на наличие ошибок. И они есть. Мой запрос работает только если в таблице perfect_bet есть одна ставка с выигрышными данными, если же их несколько то запрос не работает. Т.е. по сути подзапросы возвращают несколько наборов.
Так тоже не работает, как исправить? |
||||
|
|||||
Zloxa |
|
|||
![]() Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 53 Всего: 161 |
И как же должно работать, если их несколько? Добавлено через 5 минут и 37 секунд На самом деле вы изложили свою задачу весьма путанно. Конечно, быть может я туп, но для меня, даже после третьего прочтения суть идеи не прояснилась. Структура данных это хорошо. Очень хорошо. Но, быть может, вы покажите и фрагмнет самих данных + ожидаемый результат на предоставленном фрагменте + объяснение почему он именно таков? Добавлено через 8 минут и 40 секунд
Нет, не понятно. Мне всегда было интересно - зачем публикуют не работающие запросы, не указывая что именно в результате не устраивает. ![]() -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка ![]() |
|||
|
||||
STIM |
|
|||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 12.2.2012 Репутация: нет Всего: нет |
Разделил на три отдельных запроса и заработало. Спасибо за внимание.
|
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Составление SQL-запросов | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |