У меня есть список задач, назначенных нескольким пользователям. Я хотел бы настроить работу cron и отправлять уведомления по электронной почте один раз в час каждому пользователю. Вот мой запрос:PHP: Объединение результатов базы данных по электронной почте
SELECT t.*, u.name, u.email
FROM tasks t, users u
WHERE t.date_created > DATE_SUB(NOW(), INTERVAL 1 HOUR) AND t.user_id = u.id
ORDER BY t.date_created ASC
Вот результат (я подрезал несколько столбцов, чтобы соответствовать лучше):
+----+-------+---------------------+---------+--------+------+--------------+
| id | title | date_created | user_id | status | name | email |
+----+-------+---------------------+---------+--------+------+--------------+
| 9 | task1 | 2013-09-01 17:56:10 | 2 | active | John | [email protected] |
| 10 | task2 | 2013-09-01 17:57:20 | 1 | active | Tim | [email protected] |
| 11 | task3 | 2013-09-01 17:58:30 | 2 | active | John | [email protected] |
| 12 | task4 | 2013-09-01 17:59:40 | 1 | active | Tim | [email protected] |
+----+-------+---------------------+---------+--------+------+--------------+
Проблема заключается в том, что я не могу понять, как сцепить задачи, относящиеся к определенный user_id, а затем отправить их на назначенное электронное письмо. Таким образом, для приведенного выше примера будет два сообщения электронной почты послал:
- task1 и задача 3 (до [email protected])
- task2 и задачи 4 (к [email protected])
я не уверен, что вы просите, но попробовать 'GROUP BY email' или' GROUP BY user_id'? – putvande