Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Подскажите с запросом (Update+Insert)
|
|||
|---|---|---|---|
|
#18+
Привет, буду благодарен за помощь в составлении запроса Имеется (упрощенно): 1) Таблица 'deposits' В неё пишутся депозиты пользователей: id,date,sum,status Пользователь может иметь несколько активных депозитов (status=1) 2) Есть таблица 'users' в ней находятся персональные данные, в том числе баланс: 'balance' balance = остаток + сумма активных депозитов Задача: Каждый 1 час начислять $1 на все активные депозиты (это ясно, UPDATE deposits SET sum=sum+1 WHERE status=1) Затем суммировать активные депозиты каждого юзера и писать их в 'balance' этого же юзера Вопрос: Можно ли это сделать средствами SQL? без использования цикла на php для каждого id (сначала Select, Update, Insert по очереди и т.д.) Как вообще объединить несколько операций в один SQL-запрос и имеет ли это смысл делать? Уверен есть готовые решения... задача очень тривиальна для любой партнерской программы спасиба) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2017, 20:36 |
|
||
|
Подскажите с запросом (Update+Insert)
|
|||
|---|---|---|---|
|
#18+
MagestiqМожно ли это сделать средствами SQL?Да. MagestiqКак вообще объединить несколько операций в один SQL-запрос 1) Написать процедуру (см. тут ), в которой выполняются все эти действия. Собсно два UPDATE - сперва депозитов, потом баланса. 2) Создать задание (см. тут ), которое выполняется ежечасно, и задать в нём запуск созданной процедуры. Не забыть убедиться, что планировщик MySQL-сервера запущен. И, собственно, всё...PHP тут не нужен от слова "вообще". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2017, 20:48 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=63&tid=1830259]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
2ms |
| others: | 269ms |
| total: | 388ms |

| 0 / 0 |
