У меня две таблицы в базе данных MySQL. Первая таблица - это contacts(customer, id)
, в которых хранится информация клиентов. history(report, nextFollowingDate, customerid)
второй таблицы history(report, nextFollowingDate, customerid)
хранит историю контакта с клиентом, а также следующую следующую дату. Клиент может иметь несколько записей с разными значениями для nextFollowingDate
.
Примеры данных следующие.
таблица contacts
:
customer id
a 1
b 2
c 3
таблица history
:
report nextFollowingDate customerid
report1 2018/04/23 1
report2 2018/04/25 1
report3 2018/04/22 2
report4 2018/04/26 3
report5 2018/05/30 2
Я хотел бы сортировать клиентов в таблице контактов с значениями nextFollowingDate
в порядке возрастания. Это будет выглядеть следующим образом.
customer nextFollow
1 2018/04/25
2 2018/05/30
3 2018/04/26
Но у меня нет никакого способа сделать это.
SELECT customerId, MAX(nextFollowingDate) FROM history GROUP BY customerId
это то, что вы ищете. Однако, что вы точно подразумеваете под последней датой, ASC не очень ясен. Я написал этот ответ на основе вашего набора результатов, который вы дали в качестве своего ожидания. Найдите этот скрипт SQL, чтобы увидеть это в действии.