![]() |
![]() |
Правила Форума редакция от 22.06.2020 |
|
|
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже. |
|
![]() |
|
Опции темы | Опции просмотра |
![]() |
![]() |
![]() |
Пользователь
![]() Пол: ![]() Регистрация: 27.01.2007
Адрес: Киев
Сообщений: 103
Репутация: 130
|
![]() Есть таблица Recipients
id, id_mail, email, status (ИД, ИД письма, email, статус получения); 1, 1, '[email protected]', 'error'; 2, 1, '[email protected]', 'error'; 3, 2, '[email protected]', 'success'; 4, 2, '[email protected]', 'error'; 5, 3, '[email protected]', 'success'; 6, 3, '[email protected]', 'error'; 7, 4, '[email protected]', 'error'; 8, 4, '[email protected]', 'error'; Нужно выбрать пользователей, которые последние 3 раза не получили письмо, т.е. status='error' должно быть в 4, 3 и 2-й рассылке |
![]() |
![]() ![]() |
Реклама: | купить билет в фан зону на концерт агутина в москве 2025 | Насос Grundfos TP 125-130/4 96109524 | 3д сканирование цена | Интегрируй приложения вместе с Альбато: Электронная почта Verbox - синхронизация за 5 минут! | детская стоматология юао |
![]() |
![]() |
Постоялец
![]() ![]() ![]() ![]() ![]() Пол: ![]() Регистрация: 05.02.2007
Адрес: Москва
Сообщений: 662
Репутация: 271
|
![]() SELECT * FROM Recipients WHERE status='error' AND id_mail>=2;
__________________
Сергей Сергеевич |
![]() |
![]() ![]() |
![]() |
![]() |
Новичок
Пол: ![]() Регистрация: 30.05.2013
Сообщений: 7
Репутация: 0
|
![]() Нет, я думаю должно быть как-то так:
SELECT * FROM Recipients WHERE id in (SELECT id FROM Recipients GROUP BY status WHERE COUNT(*) > 2 AND status='error') |
![]() |
![]() ![]() |
![]() |
![]() |
Новичок
Пол: ![]() Регистрация: 24.02.2009
Сообщений: 19
Репутация: 1
|
![]() Интересная задачка, но условия недоработаны...
По предложенным решениям, последняя наиболее ближе к правильному, но выбирает/группирует пользователей неверно. Еще не ясна ситуация когда пользователь не получил письмо 3 раза подряд или вообще минимум 3 не полученных? Если интересуют минимум 3 не доставленных сообщения (я предполагаю нужны просто почтовые адреса) Код:
SELECT email, COUNT( * ) AS miss FROM recipients WHERE STATUS = 'error' GROUP BY email HAVING miss >2 |
![]() |
![]() ![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
В одинаковых позах | mimi | Сплетни и Слухи со всего мира | 22 | 12.04.2018 16:33 |
Выборка записей из таблицы dbf | Diver_wing | Базы данных | 8 | 04.05.2013 22:59 |
Помогите, проблема в последних комментариях, [просмотреть последние комментарии], и д | Antilius | Вeб Дизайн | 1 | 22.05.2009 14:28 |
|
|