Задача простыми словами: 1-й должен быть присоединен ко второй таблице, где последняя запись. Итак, я использую подход использования функции MAX()Получить строку с максимальным номером
В настоящее время у меня есть 2 стола.
соответствует
matches_payments
Теперь я хочу присоединиться второй таблицей на первый с помощью MAX (ID) на matches_payments
желаемому результат
, но я не получаю желаемый результат из-за greatest-n-per-group
проблем ,
Запрос
SELECT matches.id, mp.*
FROM matches
LEFT JOIN (SELECT
MAX(id) AS id,
match_id
paymentStatus
FROM matches_payments
GROUP BY match_id) AS mp ON mp.id = matches.id;
Желаемый результат не производится за счет: Stackoverflow Question
При использовании этой функции, все строки в каждой группе должны иметь одни и те же значения для столбцов, которые, совершенной из части GROUP BY. Сервер может возвращать любое значение из группы, поэтому результаты являются неопределенными, если все значения не совпадают. FROM MySQL Dev
PS: Я знаю, что столы плохо разработаны. Это не моя работа, как это делал последний разработчик.
Вы можете также разместить свой 'sql' код с' Max() 'попытка? – lois6b
@downvoter помочь объяснить? –
Я не голосовал, но, может быть, потому, что вы оставили MCVE, требуемый для таких вопросов? – Barmar