2016-07-27 7 views
0

У меня есть сценарий, в котором я хочу получить максимальную дату, но не из всей таблицы Просто из выбранного идентификатора, но я не смог.Как получить Макс. Дату с выбранным идентификатором строки в Mysql

Вот мой стол

enter image description here

я выполнить этот запрос Для получения выбранного мной идентификатор

SELECT * FROM `tbl_methodology` WHERE FIND_IN_SET(6, `col_select_corporate`) 

и я получил этот результат

enter image description here

С е в результате я хочу, чтобы получить эту запись, которые имеют максимальный Дата

Стараюсь этот запрос, но он не работает для меня

SELECT * FROM `tbl_methodology` WHERE id IN (1,5,7) AND `col_date` = (
    SELECT MAX(`col_date`) 
    FROM `tbl_methodology`) 

Может кто-нибудь мне помочь ??

+2

Это очень плохой дизайн db, чтобы сохранить значения как CSV – Jens

+0

Да. Исправьте это !!!! – Strawberry

+0

'SELECT MAX (col_date) FROM tbl_methodology WHERE id IN (1,5,7) FROM tbl_methodology)' – Perry

ответ

1

Добавьте где пункт дважды, и вы должны получить результат, как вы ожидали:

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

+0

Я новичок в программировании. Это моя стадия обучения. Спасибо за ваше предложение. Огромное спасибо :) – sunny