powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / LOOP в консоли?
4 сообщений из 4, страница 1 из 1
LOOP в консоли?
    #39579783
Fitter2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, можно ли запустить скрипт из консоли с циклом.
По ряду критериев из больших таблиц выбираются данные и добавляются в другую таблицу частями, чтобы не подвешивать базу.
-------------------------------------------
set @interv_90 = CURRENT_DATE - INTERVAL 90 DAY;
set @interv_30 = CURRENT_DATE - INTERVAL 31 DAY;


SET @counter = 0;

label1: LOOP

INSERT INTO tmp_inactive
SELECT u.id
FROM xx_users u
LEFT JOIN xx_mlinks l ON l.user_id = u.id AND l.created > @interv_90
LEFT JOIN xx_income_logs inc ON inc.user_id = u.id AND inc.time > UNIX_TIMESTAMP(@interv_90)
LEFT JOIN xx_userips ip ON ip.user_id = u.id AND ip.time > @interv_90
WHERE
u.id BETWEEN @counter and @counter + 1000
and l.user_id IS NULL AND
inc.user_id IS NULL AND
ip.user_id IS NULL
AND u.newsletter =1
AND u.deleted = 0
AND u.confirmed = 1
AND u.registred < UNIX_TIMESTAMP(@interv_30)

@counter = @counter + 1000;

IF @counter < 2000 THEN
ITERATE label1;
END IF;
LEAVE label1;

END LOOP label1;
-------------------------------------
(MySQL v.5.1)

Или loop позже появился?
...
Рейтинг: 0 / 0
LOOP в консоли?
    #39579814
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В MySQL нет анонимного кода. ВООБЩЕ. И никакие версии тут не при чём.
Так что пиши процедуру со всем вот этим кодом - и запущай её.
...
Рейтинг: 0 / 0
LOOP в консоли?
    #39579826
Fitter2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Понял.
Спасибо.
...
Рейтинг: 0 / 0
LOOP в консоли?
    #39580049
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fitter2По ряду критериев из больших таблиц выбираются данные и добавляются в другую таблицу частями, чтобы не подвешивать базу.
Обычно такие запросы базу не подвешивают. MyISAM?
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / LOOP в консоли?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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