У меня есть сценарий, в котором я хочу получить максимальную дату, но не из всей таблицы только из выбранного идентификатора, но мне не удалось.
Вот мой стол
Я запускаю этот запрос для получения выбранного идентификатора
SELECT * FROM `tbl_methodology` WHERE FIND_IN_SET(6, `col_select_corporate`)
и я получил этот результат
Из этого результата я хочу получить ту запись, которая имеет максимальную дату
Я пытаюсь этот запрос, но он не работает для меня
SELECT * FROM `tbl_methodology` WHERE id IN (1,5,7) AND `col_date` = (
SELECT MAX(`col_date`)
FROM `tbl_methodology`)
Может кто-нибудь мне помочь??
Добавьте предложение where дважды, и вы получите ожидаемый результат:
SELECT * FROM `tbl_methodology` WHERE id IN (1,5,7) AND `col_date` = (
SELECT MAX(`col_date`)
FROM `tbl_methodology` WHERE id IN (1,5,7))
И как я прокомментировал: это очень плохой дизайн БД, чтобы сохранить значения как CSV
Других решений пока нет …