Like the title, I have also looked for related solutions on the Internet. Many of the answers are like this SQL statement:
select Id,Ac count Id,Mark,max(Create Time ) as Latest from AccountMark as b group by AccountId
Recommended related mysql video tutorials: " mysql tutorial》
Use the Max function. But there seems to be something wrong in the data I found. As shown in the picture, in the highlighted data, the Mark field and the CreateTime field do not correspond at all!
How is this going? Is it reliable to group after using the Max function? There is another statement:
select *,COUNT(AccountId) as Num from (select * from AccountMark order by CreateTime desc) `temp` group by AccountId order by CreateTime desc
But, I need to create a
view,MysqlQuery clauses are not allowed in the middle view. Can anyone please provide me with a SQL statement that can detect the correct data without any clauses appearing? Thanks!
: The above is the detailed content of Detailed explanation on how Mysql groups data and extracts the most recent data. For more information, please follow other related articles on the PHP Chinese website!select * from AccountMark as b where not exists(select 1 from AccountMark where AccountId= b.AccountId
and b.CreateTime<CreateTime )