2016-12-01 34 views
0

我有一张表格,它在每条记录上都有一个日期,而我试图做的是在当然日期获取最新的基础。表中有一个唯一的ID相当于ID从另一个表我怎样才能在多个记录中获取mysql中的最新数据

这里有一个例子:

记录#1的2016/11/11
记录#2日有2016/11/16

明显日期记录号2是最新数据,当我尝试使用此代码:之后我得到的最新记录

select * from 
info join crew_documents_table on info.id = crew_documents_table.document_crew_id 
join crew_rank on info.crew_rank = crew_rank.crew_rank_id 
where crew_rank in ('1','2','3') 
and crew_status = '$crew_status' and vessel = '$vessel_name' group by full_name 

我这里有一个if statement,将ECH o取出最新记录的日期。

这里是我的代码为我if statement

(($row['doc_type'] == '1') ? "$doc_number" : "") 

预计outpu将是:

record # 2 2016/11/16

+0

您是否尝试添加ORDER BY? –

+0

我只想要输出1。谢谢提示 –

+0

按日期排序desc limit 1 –

回答

0

使用by子句为了得到像在特定的顺序中的数据:

$your_query. "order by column_name desc LIMIT 1"; 

Limit Doc

1

使用顺序和限制。这将解决您的问题:

select * from 
info join crew_documents_table on info.id = crew_documents_table.document_crew_id 
join crew_rank on info.crew_rank = crew_rank.crew_rank_id 
where crew_rank in ('1','2','3') 
and crew_status = '$crew_status' and vessel = '$vessel_name' group by full_name 
ORDER BY DATE_FIELD DESC 
LIMIT 1; 
相关问题